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 列表(List)操作方法详解
Mar 11 Python
跟老齐学Python之Python安装
Sep 12 Python
Python中__new__与__init__方法的区别详解
May 04 Python
Python下rrdtool模块的基本使用方法
Nov 13 Python
Python 判断 有向图 是否有环的实例讲解
Feb 01 Python
Python OpenCV处理图像之图像像素点操作
Jul 10 Python
Python实现点阵字体读取与转换的方法
Jan 29 Python
详解Python Matplot中文显示完美解决方案
Mar 07 Python
使用Python获取当前工作目录和执行命令的位置
Mar 09 Python
tensorflow使用CNN分析mnist手写体数字数据集
Jun 17 Python
关于Python不换行输出和不换行输出end=““不显示的问题(亲测已解决)
Oct 27 Python
Python3 多线程(连接池)操作MySQL插入数据
Jun 09 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中的curl使用入门教程和常见用法实例
2014/04/10 PHP
什么情况下可以不写PHP的闭合标签“?>”
2014/08/28 PHP
分享50个提高PHP执行效率的技巧
2015/12/26 PHP
javascript 关闭IE6、IE7
2009/06/01 Javascript
javascript iframe内的函数调用实现方法
2009/07/19 Javascript
nodejs的require模块(文件模块/核心模块)及路径介绍
2013/01/14 NodeJs
什么是Node.js?Node.js详细介绍
2014/06/01 Javascript
JS面向对象基础讲解(工厂模式、构造函数模式、原型模式、混合模式、动态原型模式)
2014/08/16 Javascript
开源的javascript项目Kissy介绍
2014/11/28 Javascript
CSS javascript 结合实现悬浮固定菜单效果
2015/08/23 Javascript
JavaScript对象数组排序实例方法浅析
2016/06/15 Javascript
关于Jquery中的事件绑定总结
2016/10/26 Javascript
JavaScript中的遍历详解(多种遍历)
2017/04/07 Javascript
微信小程序实现多个按钮toggle功能的实例
2017/06/13 Javascript
vue-cli项目中怎么使用mock数据
2017/09/27 Javascript
微信小程序富文本渲染引擎的详解
2017/09/30 Javascript
json 带斜杠时如何解析的实现
2019/08/12 Javascript
vue中 this.$set的用法详解
2019/09/06 Javascript
vue 中url 链接左边的小图标更改问题
2019/12/30 Javascript
JavaScript代理模式原理与用法实例详解
2020/03/10 Javascript
[03:15]2014DOTA2国际邀请赛 专访国士无双信心满满
2014/07/12 DOTA
Python实现两个list求交集,并集,差集的方法示例
2018/08/02 Python
Python单元测试与测试用例简析
2019/11/09 Python
Python使用指定字符长度切分数据示例
2019/12/05 Python
keras导入weights方式
2020/06/12 Python
详解H5本地储存Web Storage
2017/07/03 HTML / CSS
台湾生鲜宅配:大口市集
2017/10/14 全球购物
人力资源专员自我评价怎么写
2013/09/19 职场文书
警察思想汇报
2014/01/04 职场文书
给同学的道歉信
2014/01/16 职场文书
优秀学生获奖感言
2014/02/15 职场文书
基本公共卫生服务健康教育工作方案
2014/05/22 职场文书
空气的环保标语
2014/06/12 职场文书
校长创先争优承诺书
2014/08/30 职场文书
JMeter对MySQL数据库进行压力测试的实现步骤
2022/01/22 MySQL
分享Python异步爬取知乎热榜
2022/04/12 Python