請參閱下面的我的代碼,它使用Scrapy圖像流水線從網站下載/刮圖片實例版本:允許使用Scrapy Image Pipeline進行重複下載?
import scrapy
from scrapy_splash import SplashRequest
from imageExtract.items import ImageextractItem
class ExtractSpider(scrapy.Spider):
name = 'extract'
start_urls = ['url']
def parse(self, response):
image = ImageextractItem()
titles = ['a', 'b', 'c', 'd', 'e', 'f']
rel = ['url1', 'url2', 'url3', 'url4', 'url5', 'url6']
image['title'] = titles
image['image_urls'] = rel
return image
這一切工作正常,但按照默認設置,避免了重複下載。有什麼方法可以覆蓋這個,這樣我就可以下載重複的東西了嗎?謝謝。
謝謝,我試過了,它似乎沒有工作。我懷疑圖像管道源本身可能存在一些「重複檢測代碼」 - 但從審查代碼,我似乎無法在任何地方找到它。如果我能找到它,我可以更新它,這樣我就可以通過自定義arg來跳過這一步。 –
我想我已經找到了它,看看'MediaPipeline'類的方法'_process_request'([link](https://github.com/scrapy/scrapy/blob/master/scrapy/pipelines/media.py ))。如果已經下載(基於請求指紋),它將從緩存中取得文件。不幸的是,似乎沒有辦法用任何參數或設置來定製它。 –
謝謝!我會嘗試評論/調整一些源代碼,看看我能否找到一種方法使其適用於我的應用程序。 –