Python “的功能是什么?”;设置“U爬虫”;及;来自“U crawler”;在';crawl.py';用刮痧?
我不能理解这些功能。如果我继承了Python “的功能是什么?”;设置“U爬虫”;及;来自“U crawler”;在';crawl.py';用刮痧?,python,scrapy,Python,Scrapy,我不能理解这些功能。如果我继承了爬行器或爬行器,我应该重写这些函数吗。若否,原因为何 @classmethod def from_crawler(cls, crawler, *args, **kwargs): spider = super(CrawlSpider, cls).from_crawler(crawler, *args, **kwargs) spider._follow_links = crawler.settings.getbool(
爬行器
或爬行器
,我应该重写这些函数吗。若否,原因为何
@classmethod
def from_crawler(cls, crawler, *args, **kwargs):
spider = super(CrawlSpider, cls).from_crawler(crawler, *args, **kwargs)
spider._follow_links = crawler.settings.getbool(
'CRAWLSPIDER_FOLLOW_LINKS', True)
return spider
def set_crawler(self, crawler):
super(CrawlSpider, self).set_crawler(crawler)
self._follow_links = crawler.settings.getbool(
'CRAWLSPIDER_FOLLOW_LINKS', True)
通常您不需要重写这些函数,但这取决于您想做什么 crawler中的
方法(带有@classmethod
装饰器)是一个将由Scrapy用于实例化添加对象(spider、扩展、中间件等)的方法
它通常用于获取对爬虫
对象的引用(该对象包含对设置
、统计
等对象的引用),然后将其作为参数传递给正在创建的对象或为其设置属性
在您粘贴的特定示例中,它用于从爬行器跟随链接设置中读取值,并将其设置为爬行器中的\u跟随链接属性
您可以看到,它使用crawler
对象获取设置值,并将其作为参数传递给扩展,并将一些方法连接到一些方法
set\u crawler
方法在最新的Scrapy版本中已被弃用,应避免使用
阅读更多: