Scrapy 初探

来源:互联网 发布:JAVA中形式参数是对象 编辑:程序博客网 时间:2024/05/15 23:48

今天开始研究py这里写代码片`thon scrapy 框架,人生苦短,及时钻研

  1. 安装python
  2. 安装scrapy:pip install Scrapy
  3. 安装scrapyd-client:pip install Sscrapyd

开发工具用pyCharm
使用pycharm 直接debug 程式需要安装pywin32,否则无法调试
pywin32 安装

https://sourceforge.net/projects/pywin32/files/pywin32/Build%20221/

环境工作基本完成,开始Scrapy 之旅
Scrapy 框架结构
这里写图片描述

新建Scrapy 项目
CMD 进入需要创建Scrapy的文件路径,新建tutorial项目

scrapy startproject tutorial

完成之后如下
这里写图片描述

具体代码实现:

完成item
这里写图片描述

完成spider
这里写图片描述

说明; csdn 是spider的名称,start_urls 是开始爬取的url 列表,parse 是callback
function,爬取结束之后呼叫处理爬取结果,这里引入BeautifulSoup解析html
https://www.crummy.com/software/BeautifulSoup/bs4/doc/index.zh.html
这里需要注意parse中返回的request会自动加入爬取列表,并且可以通过meta传递参数

完成Pipeline
这里写图片描述

这里实现两个pipeline,每个pipeline 需要实现对应的process_item方法
pipeline 会对每一个item 进行处理
pipeline 执行顺序在settings.py文件中配置,后续会提到
MongoPipeline 引入mongoDB,mongodb 配置也在settings 文件中

pip install pymongo

settings 文件
这里写图片描述

部署爬虫
cmd 进入project 所在文件,启动scrapyd,出现下列信息说明scrapyd 启动成功
这里写图片描述

打开http://localhost:6800 看到如下画面:
这里写图片描述

修改scrapy.cfg文件如下,注意Myploy
这里写图片描述

部署project,用scrapyd-deploy 命令
这里写图片描述

启动schedule
需要安装curl 命令,CMD 进入项目所在文件夹路径,执行下列命令
这里写图片描述

具体命令说明scrapyd
http://scrapyd.readthedocs.io/en/stable/

可以看到job 的执行情况
这里写图片描述

还有下列问题需要研究解决;
1.Middleware 的使用
2.研究分布式爬虫方法
3.定时爬虫
4.爬虫webservice(之前通过JSON-RPC对象一直不能成功,郁闷)

原创粉丝点击