相关疑难解决方法(0)

如何在scrapy中基于url过滤重复请求

我正在为使用CrawlSpider scrapy的网站编写一个爬虫.

Scrapy提供了一个内置的重复请求过滤器,可根据URL过滤重复的请求.此外,我可以使用CrawlSpider的规则成员过滤请求.

我想要做的是过滤以下请求:

http:://www.abc.com/p/xyz.html?id=1234&refer=5678
Run Code Online (Sandbox Code Playgroud)

如果我已经访问过

http:://www.abc.com/p/xyz.html?id=1234&refer=4567
Run Code Online (Sandbox Code Playgroud)

注意: refer是一个不影响我得到的响应的参数,所以我不在乎该参数的值是否发生变化.

现在,如果我有一个累积所有ID的集合,我可以在我的回调函数parse_item(这是我的回调函数)中忽略它来实现此功能.

但这意味着当我不需要时,我至少仍然会抓住那个页面.

那么我告诉scrapy它不应该基于url发送特定请求的方式是什么?

python web-crawler scrapy

40
推荐指数
2
解决办法
2万
查看次数

标签 统计

python ×1

scrapy ×1

web-crawler ×1