一图:
二图:
通过命令查看所有的模板 scrapy genspider -l
基本流程:
1.先创建一个项目 scrapy startproject 项目名称
2.进入这个项目 创建(相当于)app,可以创建多个,但是不能重名.scrapy genspider mysplider(这是app名称) example.webscraping.com(这个爬取的网站链接)
或者scrapy genspider mysplider(app名称) example.webscraping.com(爬去的网站链接) --template crawl(模板)
3.运行这个爬虫程序 scrapy crawl 爬虫的名称(name的值) 或者 scrapy runserver 项目名称 这两种都可以
4.yield 当程序运行到这的时候,它会停止.上面的这个程序,总共运行了4次.
‘’‘
scrapy list 列出当前所有的app
extract():返回一个unicode字符串,该字符串为XPath选择器返回的数据
Selectors 有三种方法
1. select():返回selectors列表, 每一个select表示一个xpath参数表达式选择的节点.
2. extract():返回一个unicode字符串,该字符串为XPath选择器返回的数据
3. re():返回unicode字符串列表,字符串作为参数由正则表达式提取出来
保存文件:
scrapy crawl mysplider02 --output=aa.csv
scrapy crawl mysplider02 --output=aa.xml
scrapy crawl mysplider02 --output=aa.json
保存文件:
scrapy crawl mysplider02 --output=countries.json -s LOG_LEVEL=INFO(不加也可以出结果)
只显示错误日志信息:
scrapy crawl mysplider02 -s LOG_LEVEL=ERROR
显示所有日志信息:
scrapy crawl mysplider02(app名称name) -s LOG_LEVEL=DEBUG(写不写结果都一样)
( Ctrl+C )一次中断! 现在,爬虫状态保存在 crawls/mysplider02目录中, 之后可以运行下面的命令恢复爬虫运行
中断和恢复:
scrapy crawl mysplider02 -s LOG_LEVEL=INFO -s JOBDIR=craws/mysplider02
如果( Ctrl+C )点了两次或者两次以上的,那么将立即终止.不可再次恢复了.