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二叉树遍历的实现方法
Nov 21 Python
python实现在无须过多援引的情况下创建字典的方法
Sep 25 Python
详细解析Python当中的数据类型和变量
Apr 25 Python
python简单读取大文件的方法
Jul 01 Python
python 迭代器和iter()函数详解及实例
Mar 21 Python
SVM基本概念及Python实现代码
Dec 27 Python
浅谈Python2获取中文文件名的编码问题
Jan 09 Python
Python RabbitMQ消息队列实现rpc
May 30 Python
Python 字符串与数字输出方法
Jul 16 Python
python: 自动安装缺失库文件的方法
Oct 22 Python
解决Python selenium get页面很慢时的问题
Jan 30 Python
python实现AdaBoost算法的示例
Oct 03 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执行速率优化技巧小结
2008/03/15 PHP
php mssql 数据库分页SQL语句
2008/12/16 PHP
PHP Undefined index报错的修复方法
2011/07/17 PHP
php输出金字塔的2种实现方法
2014/12/16 PHP
Ajax实现对静态页面的文章访问统计功能示例
2016/10/10 PHP
网页里控制图片大小的相关代码
2006/06/13 Javascript
jQuery入门第一课 jQuery选择符
2010/03/14 Javascript
javascript中的prototype属性实例分析说明
2010/08/09 Javascript
jquery插件开发注意事项小结
2013/06/04 Javascript
JS图片根据鼠标滚动延时加载的实例代码
2013/07/13 Javascript
超级好用的jQuery圆角插件 Corner速成
2014/08/31 Javascript
angularjs在ng-repeat中使用ng-model遇到的问题
2016/01/21 Javascript
jQuery插件echarts去掉垂直网格线用法示例
2017/03/03 Javascript
将 vue 生成的 js 上传到七牛的实例
2017/07/28 Javascript
jquery中有哪些api jQuery主要API
2017/11/20 jQuery
Vue-Access-Control 前端用户权限控制解决方案
2017/12/01 Javascript
浅谈vue父子组件怎么传值
2018/07/21 Javascript
JS基于对象的链表实现与使用方法示例
2019/01/31 Javascript
javascript定时器的简单应用示例【控制方块移动】
2019/06/17 Javascript
echarts实现折线图的拖拽效果
2019/12/19 Javascript
vue 全局封装loading加载教程(全局监听)
2020/11/05 Javascript
vue项目配置 webpack-obfuscator 进行代码加密混淆的实现
2021/02/26 Vue.js
Python struct模块解析
2014/06/12 Python
Python构造函数及解构函数介绍
2015/02/26 Python
django处理select下拉表单实例(从model到前端到post到form)
2020/03/13 Python
基于python3.7利用Motor来异步读写Mongodb提高效率(推荐)
2020/04/29 Python
解决启动django,浏览器显示“服务器拒绝访问”的问题
2020/05/13 Python
Python正则re模块使用步骤及原理解析
2020/08/18 Python
Python实现对word文档添加密码去除密码的示例代码
2020/12/29 Python
西班牙在线宠物商店:zooplus.es
2017/02/24 全球购物
材料物理专业个人求职信
2013/12/15 职场文书
工作求职自荐信
2014/06/13 职场文书
学校教师读书活动总结
2014/07/08 职场文书
安全生产月标语
2014/10/07 职场文书
银行授权委托书样本
2014/10/13 职场文书
为什么MySQL8新特性会修改自增主键属性
2022/04/18 MySQL