scrapy возвращает «Содержание ответа не является текстом» при попытке загрузить изображение - PullRequest
0 голосов
/ 30 ноября 2018

Я пытаюсь загрузить изображения с копией, которые возвращают следующую ошибку:

raise NotSupported("Response content isn't text")
scrapy.exceptions.NotSupported: Response content isn't text
2018-11-30 14:36:09 [scrapy.core.scraper] ERROR: Spider error processing <GET https://www.example.bla/39307b2103.jpg> 

Это основной код, который я использую:

...
myitem['i10_img']       = 'https://www.example.de' + response.css("#fullscreen_img::attr(src)").extract_first()[2:]
yield scrapy.Request(myitem['i10_img'],callback=self.parseImages,  meta={'item': myitem})

return myitem

def parseImages(self, response):
    for elem in response.xpath("//img"):
        img_url = elem.xpath("@src").extract_first()
        yield ImageItem(image_urls=[img_url])

items.py

class ImageItem(scrapy.Item):
image_urls = scrapy.Field()
images = scrapy.Field()

Что-то, что мне нужно адаптировать в команде yield?

1 Ответ

0 голосов
/ 30 ноября 2018

Я думаю, вы не понимаете, как работает конвейер изображений.
Вы пытаетесь создать запрос к самому URL-адресу изображения и проанализировать его как HTML.

Вместо этого вам просто нужно добавитьURL изображения на image_urls из myitem (как вы пытаетесь сделать в parseImages).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...