环境:win10-64位、python3.6
安装依赖
-
安装lxml
pip install lxml
-
安装zope.interface
pip install zope.interface
-
安装wheel
pip inatall wheel
-
安装twisted
在网站:https://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted
下载对应的twisted安装即可。(cp36表示Python36,win_amd64表示windows64位。)
pip install Twisted-18.9.0-cp36-cp36m-win_amd64.whl
ps:此命令是在Twisted-18.9.0-cp36-cp36m-win_amd64.whl所在的目录下执行的。 -
安装pyOpenSSL
pip install pyOpenSSL
-
安装pywin32
pip install pywin32
安装scrapy
pip install scrapy
到此scrapy安装成功。
创建Scrapy项目
scrapy startproject xiaozhu
Scrapy文件介绍
items.py
定义爬取字段
piplines.py
爬虫数据处理, 入库
settings.py
项目设置
myspider.py
用户自建文件, 编写爬虫逻辑
创建爬虫模板
通过genspider命令,传入爬虫名、域名以及可选的模板参数,就可以生成初始模板 。
默认用的是basic,我们可以通过命令查看所有的模板
>scrapy genspider -l
Available templates:
basic
crawl
csvfeed
xmlfeed
当我们创建的时候可以指定模板,不指定默认用的basic,如果想要指定模板则通过
scrapy genspider -t 模板名字 爬虫名 域名
cd example # 进入项目主目录
scrapy genspider -t crawl xiaozhuspider www.xiaozhu.com
# 或者
scrapy genspider spidername example.webscraping.com --template=crawl
Scrapy爬虫运行
第一种方式:命令行
scrapy crawl xiaozhuspider
第二种方式:py文件
在爬虫项目主目录下创建main.py,文件名可自定义。
from scrapy import cmdline
command = 'scrapy crawl xiaozhuspider'
cmdline.execute('scrapy crawl xiaozhuspider'.split())
运行此文件即可启动爬虫。
-s参数:指定日志级别和启动暂停爬虫
scrapy crawl xiaozhuspider -s LOG_LEVEL=INFO -s JOBDIR=craws/country