2

在 Scrapy 教程中有 BaseSpider 的这个方法:

make_requests_from_url(url)

一种接收 URL 并返回请求对象(或请求对象列表)以进行抓取的方法。

该方法用于构造 start_requests() 方法中的初始请求,通常用于将 url 转换为请求。

除非被覆盖,否则此方法会返回带有 parse() 方法作为其回调函数的请求,并启用 dont_filter 参数(有关更多信息,请参阅请求类)。

你明白这个方法的作用吗?我可以使用 makerequestsfrom_url 和 BaseSpider 代替不适合我的 SgmlLinkExtractor 和 CrawlSpider 吗?

我试图抓取的不仅仅是给定的初始 url,而 Scrapy 没有这样做。

谢谢

4

1 回答 1

5

没错,CrawlSpider在很多情况下都是有用且方便的,但它只涵盖了所有可能的蜘蛛的一个子集。如果你需要更复杂的东西,你通常继承 BaseSpider并实现start_requests()方法。

于 2010-09-19T20:07:54.987 回答