Python爬虫框架Scrapy常用命令总结


Posted in Python onJuly 26, 2018

本文实例讲述了Python爬虫框架Scrapy常用命令。分享给大家供大家参考,具体如下:

在Scrapy中,工具命令分为两种,一种为全局命令,一种为项目命令

全局命令不需要依靠Scrapy项目就可以在全局中直接运行,而项目命令必须要在Scrapy项目中才可以运行

全局命令

全局命令有哪些呢,要想了解在Scrapy中有哪些全局命令,可以在不进入Scrapy项目所在目录的情况下,运行scrapy-h,如图所示:

Python爬虫框架Scrapy常用命令总结

可以看到,此时在可用命令在终端下展示出了常见的全局命令,分别为fetchrunspidersettingsshellstartprojectversionview

fetch命令

fetch命令主要用来显示爬虫爬取的过程.如下图所示:

Python爬虫框架Scrapy常用命令总结

在使用fetch命令时,同样可以使用某些参数进行相应的控制。那么fetch有哪些相关参数可以使用呢?我们可以通过scrpy fetch -h列出所有可以使用的fetch相关参数。比如我们可以使用?headers显示头信息,也可以使用?nolog控制不显示日志信息,还可以使用?spider=SPIDER参数来控制使用哪个爬虫,通过?logfile=FILE指定存储日志信息的文件,通过?loglevel=LEVEL控制日志等级。举个栗子:

# 显示头信息,并且不显示日志信息
scrpay -fetch --headers --nolog http://www.baidu.com

sunspider命令

通过runspider命令可以不依托scrapy的爬虫项目,直接运行一个爬虫文件

# first.py为自定义的一个爬虫文件
scrapy runspider first.py

settings命令

在scrapy项目所在的目录中使用settings命令查看的使用对应的项目配置信息,如果在scrapy项目所在的目录外使用settings命令查看的Scrapy默认的配置信息

# 在项目中使用此命令打印的为BOT_NAME对应的值,即scrapy项目名称。
# 在项目外使用此命令打印的为scrapybot
scrapy settings --get BOT_NAME

shell命令

通过shell命令可以启动Scrapy的交互终端。

Scrapy的交互终端经常在开发以及调试的时候用到,使用Scrapy的交互终端可以实现在不启动Scrapy爬虫的情况下,对网站响应进行调试,同样,在该交互终端下,我们也可以写一些Python代码进行相应测试。

Python爬虫框架Scrapy常用命令总结

>>>后面可以输入交互命令以及相应的代码

startproject命令

用于创建scrapy项目

version命令

查看scrapy版本

view命令

用于下载某个网页,然后通过浏览器查看

项目命令

bench命令

测试本地硬件的性能

scrapy bench

genspider命令

用于创建爬虫文件,这是一种快速创建爬虫文件的方式。

# scrpay genspider -t 基本格式
# basic 模板
# baidu.com 爬取的域名
scrapy genspider -t basic xxx baidu.com

此时在spider文件夹下会生成一个以xxx命名的py文件。可以使用scrapy genspider -l查看所有可用爬虫模板。当前可用的爬虫模板有:basiccrawlcsvfeedxmlfeed

check命令

使用check命令可以实现对某个爬虫文件进行合同检查,即测试.

# xxx为爬虫名
scrapy check xxx

crawl命令

启动某个爬虫

# xxx为爬虫名
scrapy crawl xxx

list命令

列出当前可使用的爬虫文件

scrapy list

edit命令

编辑爬虫文件

scrapy edit xxx

parse命令

通过parse命令,我们可以实现获取指定的URL网址,并使用对应的爬虫文件进行处理和分析

日志等级

等级名 含义
CRITICAL 发生了最严重的错误
ERROR 发生了必须立即处理的错误
WARNING 出现了一些警告信息,即存在潜在错误
INFO 输出一些提示显示
DEBUG 输出一些调试信息

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python正则表达式用法总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python中的startswith和endswith函数使用实例
Aug 25 Python
python MySQLdb Windows下安装教程及问题解决方法
May 09 Python
python实现域名系统(DNS)正向查询的方法
Apr 19 Python
python strip() 函数和 split() 函数的详解及实例
Feb 03 Python
Python算法应用实战之队列详解
Feb 04 Python
python3+PyQt5实现柱状图
Apr 24 Python
TensorFlow Session使用的两种方法小结
Jul 30 Python
wxPython的安装与使用教程
Aug 31 Python
linux环境下Django的安装配置详解
Jul 22 Python
使用Python刷淘宝喵币(低阶入门版)
Oct 30 Python
matplotlib交互式数据光标mpldatacursor的实现
Feb 03 Python
python 爬取天气网卫星图片
Jun 07 Python
Python退火算法在高次方程的应用
Jul 26 #Python
Python爬虫框架Scrapy基本用法入门教程
Jul 26 #Python
Tensorflow 合并通道及加载子模型的方法
Jul 26 #Python
解决tensorflow测试模型时NotFoundError错误的问题
Jul 26 #Python
tensorflow 恢复指定层与不同层指定不同学习率的方法
Jul 26 #Python
kaggle+mnist实现手写字体识别
Jul 26 #Python
解决tensorflow模型参数保存和加载的问题
Jul 26 #Python
You might like
php站内搜索并高亮显示关键字的实现代码
2011/12/29 PHP
php中simplexml_load_string使用实例分享
2014/02/13 PHP
详解php中的implements 使用
2017/06/13 PHP
Jquery 在页面加载后执行的几种方式
2014/03/14 Javascript
jQuery实现简单的间隔向上滚动效果
2015/03/09 Javascript
ajax读取数据后使用jqchart显示图表的方法
2015/06/10 Javascript
jQuery过滤HTML标签并高亮显示关键字的方法
2015/08/07 Javascript
JS实现淡蓝色简洁竖向Tab点击切换效果
2015/10/06 Javascript
基于JSON格式数据的简单jQuery幻灯片插件(jquery-slider)
2016/08/10 Javascript
微信小程序 form组件详解
2016/10/25 Javascript
JavaScript实现二分查找实例代码
2017/02/22 Javascript
Node.js利用js-xlsx处理Excel文件的方法详解
2017/07/05 Javascript
详解ES6之用let声明变量以及let loop机制
2017/07/15 Javascript
微信小程序出现wx.navigateTo页面不跳转问题的解决方法
2017/12/26 Javascript
详解vue移动端项目的适配(以mint-ui为例)
2018/08/17 Javascript
ios中视频的最后一桢问题解决
2019/05/14 Javascript
javascript面向对象三大特征之多态实例详解
2019/07/24 Javascript
Vue 权限控制的两种方法(路由验证)
2019/08/16 Javascript
在layui.use 中自定义 function 的正确方法
2019/09/16 Javascript
react用Redux中央仓库实现一个todolist
2019/09/29 Javascript
js+h5 canvas实现图片验证码
2020/10/11 Javascript
[01:12:53]完美世界DOTA2联赛PWL S2 Forest vs SZ 第一场 11.25
2020/11/26 DOTA
python求pi的方法
2014/10/08 Python
Python下实现的RSA加密/解密及签名/验证功能示例
2017/07/17 Python
Python中实现switch功能实例解析
2018/01/11 Python
python+matplotlib绘制饼图散点图实例代码
2018/01/20 Python
pandas值替换方法
2018/07/10 Python
python获取指定日期范围内的每一天,每个月,每季度的方法
2019/08/08 Python
Python不支持 i ++ 语法的原因解析
2020/07/22 Python
美国精品家居用品网站:US-Mattress
2016/08/24 全球购物
外贸主管求职简历的自我评价
2013/10/23 职场文书
视光学毕业生自荐书范文
2014/02/13 职场文书
内衣营销方案
2014/03/15 职场文书
大学生志愿者活动总结
2014/06/27 职场文书
委托书怎么写
2014/07/31 职场文书
哪类餐饮行业,最适合在高校创业?
2019/08/19 职场文书