DEPTH_LIMIT究竟是指什么?目前的深度是否可参考?

时间:2016-08-18 23:17:51

标签: python scrapy scrapy-spider

Scrapy表示它有一个DEPTH_LIMIT setting,但没有具体说出它所考虑的内容' depth'。在抓页面方面,我已经看过“深度”。请参阅网址的深度,或http://somedomain.com/this/is/a/depth/six/url,其中该网址请求的网页深度为“六”,因为它的六个。http://somedomain.com中的段将为深度零。

另一方面,当我们考虑用树木进行刮擦时,深度更可能是指你离起始位置有多远。因此,如果我向它提供http://somedomain.com/start/here的起始网址,即深度为零,则该响应上找到的任何链接都将是深度为1。

Scrapy是否使用其中一种定义?如果是这样的话?如果是后一个(这似乎更合乎逻辑),是否有任何方法可以获得深度信息,无论是在您处理爬虫中的响应还是当您将其作为一个后处理管道中的项目?

1 个答案:

答案 0 :(得分:1)

Scrapy使用DFS方法进行遍历,可以通过响应元数据访问当前深度:response.meta['depth']