Scrapy-爬虫多开技能
来源:互联网 发布:windows域 编辑:程序博客网 时间:2024/06/07 08:21
我们知道,现在运行Scrapy项目中的爬虫文件,需要一个一个的运行,那么是否可以将对应的想运行的爬虫文件批量运行呢?如果可以,又该如何实现呢?
在Scrapy中,如果想批量运行爬虫文件,常见的方式有两种:
1. 利用CrawlerProcess实现
2. 修改crawl源码
CrawlerProcess实现
import scrapyfrom scrapy.crawler import CrawlerProcessfrom spiders.spider1 import Spider1Spiderfrom spiders.spider2 import Spider2Spiderfrom spiders.spider3 import Spider3Spider'''spiders包下三个爬虫文件spider1,spider2,spider3Spider1Spider、Spider2Spider、Spider3Spider分别为三个爬虫文件下三个类'''process = CrawlerProcess()process.crawl(Spider1Spider)process.crawl(Spider2Spider)process.crawl(Spider3Spider)process.start()
修改craw源码
- 在GitHub下载crawl源码(地址:https://github.com/scrapy/scrapy/blob/master/scrapy/commands/crawl.py)
- 在spiders同级目录下创建文件夹mycrawl(名字可自定义),创建一个python文件mycrawl(名字可自定义)
- 将源码先复制到mycrawl文件中,修改源码run方法部分:
def run(self,args,opts): sp_list = self.crawler_process.spider_loader.list() # 遍历爬虫 for name in sp_list or args: self.crawler_process.crawl(name,**opts.spargs) self.crawler_process.start()
- 在mycrawl文件夹中创建init.py文件
- 在settings.py中添加:
# xxxx为项目名COMMANDS_MODULE = 'xxxx.mycrawl'
- 在终端中进入project目录下,再进入与project同名的目录下,执行命令:
scrapy mycrawl
阅读全文
0 0
- Scrapy-爬虫多开技能
- Scrapy爬虫多开技能
- scrapy爬虫
- Scrapy 爬虫
- scrapy爬虫
- 爬虫-scrapy
- 爬虫笔记(10/6)-------多开技能
- 爬虫技能
- python 网络爬虫开源框架scrapy
- scrapy爬虫多个条件获取字段
- scrapy如何顺序执行多个爬虫
- python scrapy多进程新闻爬虫
- scrapy顺序执行多个爬虫
- scrapy多爬虫以及爬取速度
- Scrapy爬虫(六):多个爬虫组合实例
- python爬虫框架scrapy一次执行多个爬虫文件
- Scrapy爬虫(二):爬虫简介
- Scrapy-CrawlSpider爬虫组件
- oracle的性能报告获取
- java日志组件介绍(common-logging,log4j,slf4j,logback )
- 关于RAC中SCN原理和机制的探索
- 结构体的大小
- jsp登录(mysql数据库)
- Scrapy-爬虫多开技能
- HEVC官方软件HM源代码简单分析-解码器TAppDecoder
- [NOIp复习计划]:二分答案
- windos 下MySQL 安装和启动步骤
- vue动态载入变量键值名,实现数据双向绑定
- 重建二叉树
- 前端代码检测利器——eslint for sublime安装指南
- VC++6.0插件系列(绝对经典)
- PAT a1006题解