爬虫日记(83):Scrapy的CrawlerProcess类(二)
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 = &
相关文章
- 第三百七十一节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现我的搜索以及热门搜索
- 第三百六十八节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现搜索的自动补全功能
- 第三百四十一节,Python分布式爬虫打造搜索引擎Scrapy精讲—编写spiders爬虫文件循环抓取内容—meta属性返回指定值给回调函数—Scrapy内置图片下载器
- Python爬虫:scrapy定时运行的脚本
- Python爬虫:scrapy辅助功能实用函数
- 爬虫日记(86):Scrapy的Scheduler类(二)
- 爬虫日记(75):Scrapy的Settings源码分析
- 爬虫日记(74):Scrapy项目配置参数源码分析(二)
- 爬虫日记(74):Scrapy项目配置参数源码分析
- 爬虫日记(72):Scrapy安装程序入口点分析
- 爬虫日记(68):Scrapy的CSVFeedSpider使用
- 爬虫日记(62):Scrapy的合约测试
- 爬虫日记(29):随机更换scrapy的代理IP地址
- 爬虫日记(26):使用scrapy检验代理是否有效
- 爬虫日记(25):Scrapy 中设置随机 User-Agent 二
- 爬虫日记(11):scrapy工程的创建
- scrapy爬虫中间件-urlLength