我一直在尝试理解在Web报废中使用BaseSpider和CrawlSpider的概念。我已经阅读了docs.但是没有提到BaseSpider。如果有人解释 BaseSpider 和 CrawlSpider 之间的差异,对我来说真的很有帮助。
答案 0 :(得分:11)
BaseSpider
之前已存在,现在已弃用(自0.22起) - 请改为使用scrapy.Spider
:
import scrapy
class MySpider(scrapy.Spider):
# ...
scrapy.Spider
是最简单的蜘蛛,它基本上会访问start_urls
中定义的或start_requests()
返回的网址。
当您需要"抓取时,请使用CrawlSpider
"行为 - 提取链接并跟随它们:
这是用于抓取常规网站的最常用的蜘蛛, 因为它提供了一种方便的机制,通过定义来跟踪链接 一套规则。它可能不是最适合您的特定网络 站点或项目,但它对于几种情况来说足够通用,所以你 可以从它开始并根据需要覆盖它以获得更多自定义 功能,或只是实现自己的蜘蛛。