Python 如何在Scrapy中忽略已爬网的URL
我有一个类似这样的爬虫:Python 如何在Scrapy中忽略已爬网的URL,python,django,web-crawler,scrapy,Python,Django,Web Crawler,Scrapy,我有一个类似这样的爬虫: def parse: ....... ........ Yield(Request(url=nextUrl,callback=self.parse2)) def parse2: ....... ........ Yield(Request(url=nextUrl,callback=self.parse3)) def parse3: ....... ........ 我想
def parse:
.......
........
Yield(Request(url=nextUrl,callback=self.parse2))
def parse2:
.......
........
Yield(Request(url=nextUrl,callback=self.parse3))
def parse3:
.......
........
我想添加一个规则,其中我想忽略URL在调用函数parse2时是否已爬网,但保留parse3的规则。我仍在浏览requests.seen文件,以查看是否可以处理该文件。请在上签出don\u filter request参数 dont_filter(布尔)–表示调度程序不应筛选此请求。当您希望多次执行相同的请求以忽略重复项筛选器时,可使用此选项。小心使用,否则你会陷入爬行循环。默认为False 可以在settings.py中设置规则。参考文件 默认值:“scrapy.dupefilter.RFPDupeFilter” 用于检测和筛选重复请求的类 默认(RFPDupeFilter)使用scrapy.utils.request.request\u指纹功能基于请求指纹进行过滤
盖伊-谢谢你的回答(都是!)。我已经从start_URL抓取了几个链接。因此,在调用parse2时,requests.seen文件中有一些URL记录。“dont_filter”在调用parse2时会起作用吗?现在它们已经被过滤了?dont_filter是每个请求的,不管URL过去是否被过滤过。