【发布时间】:2019-11-04 21:17:05
【问题描述】:
Spider 运行正常并在 mongodb 中保存数据,但突然开始在数据库以及 json 和 csv 中保存重复值,我删除了下载图像的代码,它工作正常,但我需要图像,谁能帮帮我? 提前致谢。
items.py
导入scrapy
class BucketItem(scrapy.Item):
# define the fields for your item here like:
store_name = scrapy.Field()
category = scrapy.Field()
sub_category = scrapy.Field()
name = scrapy.Field()
unit = scrapy.Field()
price = scrapy.Field()
link = scrapy.Field()
image_urls = scrapy.Field()
images = scrapy.Field()
pass
管道.py
导入 pymongo
类 BucketPipeline(object):
def __init__(self):
self.conn = pymongo.MongoClient(
'localhost', 27017
)
db = self.conn['bucket']
self.collection = db['products_tb']
def process_item(self, item, spider):
self.collection.insert(dict(item))
return item
蜘蛛.py
image_url = [product.css('.productVisuals img::attr(src)').extract_first()]
items = response.meta['items']
items['name'] = product_name
items['unit'] = unit
items['price'] = product_price
items['link'] = product_link
items['image_urls'] = image_url
# print(items['name'])
yield items
[scrapy.pipelines.files] 警告:文件(代码:400):从 https://qne.com.pk/../product_images/14768.jpg> 下载文件时出错
【问题讨论】:
-
yield itemsitems 看起来有问题(您通常一次生成一个项目)。请提供一个最小的、可重现的例子。见stackoverflow.com/help/mcve