什么是异步:
工作涉及一次执行多个IO操作。
什么是多线程:
多线程:允许单个任务分成不同的部分运行
相互之间是有一定的相似之处的,那我们接下来解说下 scrapy框架,然后大家自己来抉择下哈~
Scrapy框架是通过命令行来创建项目的,代码的编写还是需要IDE。项目创建之后,项目文件结构如下所示:
scrapy.cfg project/ __init__.py items.py pipelines.py settings.py middlewares.py spiders/ __init__.py spider1.py spider2.py ...复制代码
Scrapy数据流是由执行的核心引擎控制,流程是这样的:
1、爬虫引擎获得初始请求开始抓取。
2、爬虫引擎开始请求调度程序SCHEDULER,并准备对下一次的请求进行抓取。
3、爬虫调度器返回下一个请求给爬虫引擎。
4、引擎请求发送到下载器DOWNLOADER,通过下载中间件下载网络数据。
5、一旦下载器完成页面下载,将下载结果返回给爬虫引擎。