Scrapy CrawlSpider 爬取深度设置指南
CrawlSpider 是 Scrapy 框架提供的一个爬虫类,用于构建基于规则的通用爬虫。CrawlSpider 默认会处理所有的链接,并根据规则提取链接并继续爬取。
要设置 CrawlSpider 的爬取深度,可以通过设置 'DEPTH_LIMIT' 参数来实现。'DEPTH_LIMIT' 参数用于限制爬取的深度,即爬虫会在达到指定的深度后停止爬取。可以将 'DEPTH_LIMIT' 设置为一个整数,表示最大的爬取深度。
以下是一个示例代码,展示如何设置 CrawlSpider 的爬取深度为 3:
from scrapy.spiders import CrawlSpider, Rule
from scrapy.linkextractors import LinkExtractor
class MySpider(CrawlSpider):
name = 'myspider'
allowed_domains = ['example.com']
start_urls = ['http://www.example.com']
rules = [
Rule(LinkExtractor(allow=()), callback='parse_item', follow=True),
]
custom_settings = {
'DEPTH_LIMIT': 3
}
def parse_item(self, response):
# 解析和处理爬取的数据
pass
在上述示例中,'DEPTH_LIMIT' 被设置为 3,表示爬虫只会爬取深度为 3 的页面。如果想爬取更深的页面,可以将 'DEPTH_LIMIT' 设置为更大的值。
原文地址: https://www.cveoy.top/t/topic/pZOM 著作权归作者所有。请勿转载和采集!