zl程序教程

您现在的位置是:首页 >  后端

当前栏目

爬虫日记(83):Scrapy的CrawlerProcess类(二)

爬虫scrapy 日记 83
2023-09-14 09:10:04 时间

因此继续来分析这两个函数的代码,才能理解蜘蛛类怎么样加载进来,怎么样设置twisted底层的工作框架。我们来查看_get_spider_loader函数的代码,它的定义如下:

第131行使用了staticmethod装饰器,它是用来创建一个静态方法。静态方法类似普通方法,参数里面不用self。这些方法和类相关,但是又不需要类和实例中的任何信息、属性等等。如果把这些方法写到类外面,这样就把和类相关的代码分散到类外,使得之后对于代码的理解和维护都是巨大的障碍,而静态方法就是用来解决这一类问题的。因此可以认为_get_spider_loader方法实现的功能与类相关,但与类实例无关。

第132行定义静态方法的名称,接收外面传送的设置类settings。

第134行从设置类settings得到蜘蛛类加载类的包路径。SPIDER_LOADER_CLASS参数定义在文件scrapy\settings\default_settings.py里:

SPIDER_LOADER_CLASS = &