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中查找excel某一列的重复数据 剔除之后打印
Feb 10 Python
Python的Flask框架中实现分页功能的教程
Apr 20 Python
Python中Random和Math模块学习笔记
May 18 Python
Python实现抓取HTML网页并以PDF文件形式保存的方法
May 08 Python
Python 爬取携程所有机票的实例代码
Jun 11 Python
Python3.7 dataclass使用指南小结
Feb 22 Python
使用 tf.nn.dynamic_rnn 展开时间维度方式
Jan 21 Python
python opencv实现图片缺陷检测(讲解直方图以及相关系数对比法)
Apr 07 Python
python中数字是否为可变类型
Jul 08 Python
python中random.randint和random.randrange的区别详解
Sep 20 Python
python实现视频压缩功能
Dec 18 Python
python获取天气接口给指定微信好友发天气预报
Dec 28 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
10个实用的PHP正则表达式汇总
2014/10/23 PHP
laravel框架中路由设置,路由参数和路由命名实例分析
2019/11/23 PHP
一些常用的JS功能函数代码
2009/06/23 Javascript
基于JQUERY的多级联动代码
2012/01/24 Javascript
js弹出的对话窗口永远保持居中显示
2012/12/15 Javascript
onkeyup,onkeydown和onkeypress的区别介绍
2013/10/21 Javascript
js控制href内容的连接内容的变化示例
2014/04/30 Javascript
jquery实现的一个简单进度条效果实例
2014/05/12 Javascript
Jquery中的$.each获取各种返回类型数据的使用方法
2015/05/03 Javascript
ionic实现带字的toggle滑动组件
2016/08/27 Javascript
Angular 2 利用Router事件和Title实现动态页面标题的方法
2017/08/23 Javascript
详解使用Visual Studio Code对Node.js进行断点调试
2017/09/14 Javascript
微信小程序表单验证功能完整实例
2017/12/01 Javascript
JavaScript中引用vs复制示例详析
2018/12/06 Javascript
vue使用代理解决请求跨域问题详解
2019/07/24 Javascript
Vue 使用beforeEach实现登录状态检查功能
2019/10/31 Javascript
webpack.DefinePlugin与cross-env区别详解
2020/02/23 Javascript
Vue 封装防刷新考试倒计时组件的实现
2020/06/05 Javascript
关于小程序优化的一些建议(小结)
2020/12/10 Javascript
[18:32]DOTA2 HEROS教学视频教你分分钟做大人-谜团
2014/06/12 DOTA
在Python的Django框架上部署ORM库的教程
2015/04/20 Python
Python实现多线程抓取网页功能实例详解
2017/06/08 Python
python同义词替换的实现(jieba分词)
2020/01/21 Python
python GUI库图形界面开发之PyQt5线程类QThread详细使用方法
2020/02/26 Python
Django怎么在admin后台注册数据库表
2020/11/14 Python
会计学财务管理专业个人的自我评价
2013/10/19 职场文书
面试后感谢信
2014/02/01 职场文书
董事长致辞
2015/07/29 职场文书
新人入职感言
2015/07/31 职场文书
母亲节主题班会
2015/08/14 职场文书
2019最新婚庆对联集锦!
2019/07/10 职场文书
python文件名批量重命名脚本实例代码
2021/04/22 Python
Python实现byte转integer
2021/06/03 Python
Django使用echarts进行可视化展示的实践
2021/06/10 Python
python自动化操作之动态验证码、滑动验证码的降噪和识别
2021/08/30 Python
Python天气语音播报小助手
2021/09/25 Python