2016-09-21 51 views
1

當我打開DUPEFILTER_DEBUG,我得到:Scrapy - 如何獲得重複請求,引用者

2016年9月21日1時48分29秒[scrapy] DEBUG:過濾重複的請求:HTTP:// WWW .example.org/example.html>

問題是,我需要知道重複請求的引用來調試代碼。我如何調試引用者?

+0

嘗試在內存或文件中實現您自己的訪問日誌,例如使用一個已生成的鏈接管道。 – Kruser

回答

0

一種選擇是基於一個自定義過濾器內置RFPDupeFilter過濾器:

from scrapy.dupefilters import RFPDupeFilter 

class MyDupeFilter(RFPDupeFilter): 
    def log(self, request, spider): 
     self.logger.debug(request.headers.get("REFERER"), extra={'spider': spider}) 
     super(MyDupeFilter, self).log(request, spider) 

不要忘記設置DUPEFILTER_CLASS setting指向您的自定義類。

(未測試)