def process_item(self, item, spider): url = item['file_url'] name = item['name']
result = self.post.aggregate(
[
{"$group": {"_id": {"url": url, "name": name}}}
]
)
if result:
pass
else:
self.post.insert({"url": url, "name": name})
return item
def file_path(self, request, response=None, info=None):
return request.meta.get('filename', '')
现在情况是这样,我想去组合键去重,然后没有的话就入数据库,然后下载,但是这个是框架里面的下载,我现在想在插入数据库后 直接下载,这个怎么调动那个 下载函数呢?
def get_media_requests(self, item, info):
file_url = item['file_url']
meta = {'filename': item['name']}
yield Request(url=file_url, meta=meta)