【发布时间】:2014-06-25 10:54:21
【问题描述】:
所以我一直在尝试通过创建一个非常基本的爬虫来学习 Python。目前,我所有的抓取都按预期工作,除了图像:
我已在我的 settings.py 中添加了一个图像存储,我通过蜘蛛成功提取了图像的 URL,但它当前没有保存任何图像。
图片URL提取行如下:
snowboard['image_URL'] = ''.join(item.xpath('li[@class="productImage"]/a/img/@data-original').extract())
这将产生类似这样的东西:
"image_URL": "/zoom/858553/230"
在我的 items.json 中。
到目前为止,除了没有图像保存到我的图像存储区之外,一切看起来都还不错。作为参考,这是我的项目管道:
class SnowboardPipeline(object):
def process_item(self, item, spider):
return item
def get_media_requests(self, item, info):
for imageURL in item['image_URL']:
yield Request(imageURL)
我很好奇这是否与没有异常的图像有关,或者当涉及到下拉图像时,我已经查看了文档中非常明显的内容。
【问题讨论】:
-
假设你在doc.scrapy.org/en/latest/topics/images.html之后启用了
ImagesPipeline,你的项目键告诉它下载图像should beimage_urls而不是image_URL。它也应该是一个列表,而不是一个唯一的字符串元素
标签: python web-scraping scrapy