@llonchj : Do you want to update this PR or should I take care of it?

it should move `body_or_str` as private function to `scrapy.utils.iterators` and try to decode "binary" responses using `utf-8` as best effort.