这篇文章主要是对的scrapy命令行使用的一个介绍

创建爬虫项目

scrapy startproject 项目名
例子如下:

  1. scrapy startproject test1
  2.  
  3. You can start your first spider with:
  4. cd test1
  5. scrapy genspider example example.com

这个时候爬虫的目录结构就已经创建完成了,目录结构如下:

  1. |____scrapy.cfg
  2. |____test1
  3. | |______init__.py
  4. | |____items.py
  5. | |____middlewares.py
  6. | |____pipelines.py
  7. | |____settings.py
  8. | |____spiders
  9. | | |______init__.py

关于命令详细使用

命令的使用范围

这里的命令分为全局的命令和项目的命令,全局的命令表示可以在任何地方使用,而项目的命令只能在项目目录下使用

全局的命令有:
startproject
genspider
settings
runspider
shell
fetch
view
version

项目命令有:
crawl
check
list
edit
parse
bench

startproject
这个命令没什么过多的用法,就是在创建爬虫项目的时候用

genspider
用于生成爬虫,这里scrapy提供给我们不同的几种模板生成spider,默认用的是basic,我们可以通过命令查看所有的模板

  1. localhost:test1 zhaofan$ scrapy genspider -l
  2. Available templates:
  3. basic
  4. crawl
  5. csvfeed
  6. xmlfeed
  7. localhost:test1 zhaofan$

当我们创建的时候可以指定模板,不指定默认用的basic,如果想要指定模板则通过
scrapy genspider -t 模板名字

  1. localhost:test1 zhaofan$ scrapy genspider -t crawl zhihuspider zhihu.com
  2. Created spider 'zhihuspider' using template 'crawl' in module:
  3. test1.spiders.zhihuspider
  4. localhost:test1 zhaofan$

crawl

这个是用去启动spider爬虫格式为:
scrapy crawl 爬虫名字
这里需要注意这里的爬虫名字和通过scrapy genspider 生成爬虫的名字是一致的

check
用于检查代码是否有错误,scrapy check

list
scrapy list列出所有可用的爬虫

fetch
scrapy fetch url地址 
该命令会通过scrapy downloader 讲网页的源代码下载下来并显示出来

这里有一些参数:
--nolog 不打印日志
--headers 打印响应头信息
--no-redirect 不做跳转

view
scrapy view url地址
该命令会讲网页document内容下载下来,并且在浏览器显示出来

settings
获取当前的配置信息
通过scrapy settings -h可以获取这个命令的所有帮助信息

  1. localhost:jobboleSpider zhaofan$ scrapy settings -h
  2. Usage
  3. =====
  4. scrapy settings [options]
  5.  
  6. Get settings values
  7.  
  8. Options
  9. =======
  10. --help, -h show this help message and exit
  11. --get=SETTING print raw setting value
  12. --getbool=SETTING print setting value, interpreted as a boolean
  13. --getint=SETTING print setting value, interpreted as an integer
  14. --getfloat=SETTING print setting value, interpreted as a float
  15. --getlist=SETTING print setting value, interpreted as a list
  16.  
  17. Global Options
  18. --------------
  19. --logfile=FILE log file. if omitted stderr will be used
  20. --loglevel=LEVEL, -L LEVEL
  21. log level (default: DEBUG)
  22. --nolog disable logging completely
  23. --profile=FILE write python cProfile stats to FILE
  24. --pidfile=FILE write process ID to FILE
  25. --set=NAME=VALUE, -s NAME=VALUE
  26. set/override setting (may be repeated)
  27. --pdb enable pdb on failure

拿一个例子进行简单的演示:(这里是我的这个项目的settings配置文件中配置了数据库的相关信息,可以通过这种方式获取,如果没有获取的则为None)

  1. localhost:jobboleSpider zhaofan$ scrapy settings --get=MYSQL_HOST
  2. 192.168.1.18
  3. localhost:jobboleSpider zhaofan$

runspider
这个和通过crawl启动爬虫不同,这里是scrapy runspider 爬虫文件名称
所有的爬虫文件都是在项目目录下的spiders文件夹中

version
查看版本信息,并查看依赖库的信息

  1. localhost:~ zhaofan$ scrapy version
  2. Scrapy 1.3.2
  3. localhost:~ zhaofan$ scrapy version -v
  4. Scrapy : 1.3.2
  5. lxml : 3.7.3.0
  6. libxml2 : 2.9.4
  7. cssselect : 1.0.1
  8. parsel : 1.1.0
  9. w3lib : 1.17.0
  10. Twisted : 17.1.0
  11. Python : 3.5.2 (v3.5.2:4def2a2901a5, Jun 26 2016, 10:47:25) - [GCC 4.2.1 (Apple Inc. build 5666) (dot 3)]
  12. pyOpenSSL : 16.2.0 (OpenSSL 1.0.2k 26 Jan 2017)
  13. Platform : Darwin-16.6.0-x86_64-i386-64bit

Scrapy 笔记(一)的更多相关文章

  1. Learning Scrapy笔记(六)- Scrapy处理JSON API和AJAX页面

    摘要:介绍了使用Scrapy处理JSON API和AJAX页面的方法 有时候,你会发现你要爬取的页面并不存在HTML源码,譬如,在浏览器打开http://localhost:9312/static/, ...

  2. Learning Scrapy笔记(零) - 前言

    我已经使用了scrapy有半年之多,但是却一直都感觉没有入门,网上关于scrapy的文章简直少得可怜,而官网上的文档(http://doc.scrapy.org/en/1.0/index.html)对 ...

  3. 转 Scrapy笔记(5)- Item详解

    Item是保存结构数据的地方,Scrapy可以将解析结果以字典形式返回,但是Python中字典缺少结构,在大型爬虫系统中很不方便. Item提供了类字典的API,并且可以很方便的声明字段,很多Scra ...

  4. Scrapy笔记(1)- 入门篇

    Scrapy笔记01- 入门篇 Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架.可以应用在包括数据挖掘, 信息处理或存储历史数据等一系列的程序中.其最初是为了页面抓取(更确切来说, ...

  5. Scrapy笔记02- 完整示例

    Scrapy笔记02- 完整示例 这篇文章我们通过一个比较完整的例子来教你使用Scrapy,我选择爬取虎嗅网首页的新闻列表. 这里我们将完成如下几个步骤: 创建一个新的Scrapy工程 定义你所需要要 ...

  6. Scrapy笔记03- Spider详解

    Scrapy笔记03- Spider详解 Spider是爬虫框架的核心,爬取流程如下: 先初始化请求URL列表,并指定下载后处理response的回调函数.初次请求URL通过start_urls指定, ...

  7. Scrapy笔记04- Selector详解

    Scrapy笔记04- Selector详解 在你爬取网页的时候,最普遍的事情就是在页面源码中提取需要的数据,我们有几个库可以帮你完成这个任务: BeautifulSoup是python中一个非常流行 ...

  8. Scrapy笔记05- Item详解

    Scrapy笔记05- Item详解 Item是保存结构数据的地方,Scrapy可以将解析结果以字典形式返回,但是Python中字典缺少结构,在大型爬虫系统中很不方便. Item提供了类字典的API, ...

  9. Scrapy笔记06- Item Pipeline

    Scrapy笔记06- Item Pipeline 当一个item被蜘蛛爬取到之后会被发送给Item Pipeline,然后多个组件按照顺序处理这个item. 每个Item Pipeline组件其实就 ...

  10. Scrapy笔记07- 内置服务

    Scrapy笔记07- 内置服务 Scrapy使用Python内置的的日志系统来记录事件日志. 日志配置 LOG_ENABLED = true LOG_ENCODING = "utf-8&q ...

随机推荐

  1. K8S dashboard 创建只读账户

    1.创建名字为“Dashboard-viewonly“的Cluster Role,各种资源只给予了list,get,watch的权限.dashboard-viewonly.yaml --- apiVe ...

  2. python---爬虫相关性能(各个异步模块的使用,和自定义异步IO模块)

    一:线程池,进程池等相关文章了解 python---基础知识回顾(十)进程和线程(py2中自定义线程池和py3中的线程池使用) python---基础知识回顾(十)进程和线程(协程gevent:线程在 ...

  3. 在GitHub搭建个人博客 地址: https://douzujun.github.io/

    搭建博客地址:https://douzujun.github.io/ 博客模板:https://github.com/douzujun/douzujun.github.io 显示效果:

  4. linux中execve函数的用法

    在父进程中fork一个子进程,在子进程中调用exec函数启动新的程序.exec函数一共有六个,其中execve为内核级系统调用,其他(execl,execle,execlp,execv,execvp) ...

  5. PHP扩展开发--02.包裹第三方的扩展

    背景 也许最常见的PHP扩展是那些包裹第三方C库的扩展.这些扩展包括MySQL或Oracle的数据库服务库,libxml2的 XML技术库,ImageMagick 或GD的图形操纵库. 在本节中,我们 ...

  6. form表单token错误

    添加一段代码试试: <input type="hidden" name="_token" value="{{ csrf_token() }}&q ...

  7. Paramiko使用

    1.下载安装 pycrypto-2.6.1.tar.gz (apt-get install python-dev) 解压,进入,python setup.py build[编译],python set ...

  8. LeetCode之数据流中第一个唯一的数字

    使用一个Map维护数字出现的次数,使用一个链表维护只出现一次的数,使用一个变量记录是否找到过终止数字. AC代码: public class Solution { /* * @param : a co ...

  9. npm的常用命令

    npm install <name>安装nodejs的依赖包 例如npm install express 就会默认安装express的最新版本,也可以通过在后面加版本号的方式安装指定版本, ...

  10. rust 入门

    hello rust fn main() { println!("Hello, world!"); } 从hello world入手,rust的语法是比较简洁. 在mac os中, ...