python爬虫scrapy命令工具学习之篇三

命令行工具(Command line tools)

全局命令html

项目命令git

一、建立爬虫工程的命令github

scrapy startproject myproject

二、控制项目建立一个spidershell

scrapy genspider mydomain mydomain.com

三、使用爬虫进行爬去浏览器

$ scrapy crawl myspider

四、进行contract检查dom

$ scrapy check -l

五、列出当前项目中全部可用的spider。每行输出一个spiderscrapy

$ scrapy list

六、使用 EDITOR 中设定的编辑器编辑给定的spider编辑器

$ scrapy edit spider1

七、使用Scrapy下载器(downloader)下载给定的URL,并将获取到的内容送到标准输出。ide

该命令以spider下载页面的方式获取页面。例如,若是spider有 USER_AGENT 属性修改了 User Agent,该命令将会使用该属性。函数

所以,您可使用该命令来查看spider如何获取某个特定页面。

该命令若是非项目中运行则会使用默认Scrapy downloader设定。

  • 语法: scrapy fetch <url>
$ scrapy fetch --nolog http://www.example.com/some/page.html

八、在浏览器中打开给定的URL

  • 语法: scrapy view <url>
  • 在浏览器中打开给定的URL,并以Scrapy spider获取到的形式展示。 有些时候spider获取到的页面和普通用户看到的并不相同。 所以该命令能够用来检查spider所获取到的页面,并确认这是您所指望的。
$ scrapy view http://www.example.com/some/page.html

九、shell命令

在spider的开发调试过程总,shell命令能够经过交互的方式进行调试,很是方便。

以给定的URL(若是给出)或者空(没有给出URL)启动Scrapy shell。 查看 Scrapy终端(Scrapy shell) 获取更多信息。

 

$ scrapy shell http://www.example.com/some/page.html

十、parse命令

  • 语法: scrapy parse <url> [options]
  • 获取给定的URL并使用相应的spider分析处理。若是您提供 --callback 选项,则使用spider的该方法处理,不然使用 parse 。

支持的选项:

  • --spider=SPIDER: 跳过自动检测spider并强制使用特定的spider
  • --a NAME=VALUE: 设置spider的参数(可能被重复)
  • --callback or -c: spider中用于解析返回(response)的回调函数
  • --pipelines: 在pipeline中处理item
  • --rules or -r: 使用 CrawlSpider 规则来发现用来解析返回(response)的回调函数
  • --noitems: 不显示爬取到的item
  • --nolinks: 不显示提取到的连接
  • --nocolour: 避免使用pygments对输出着色
  • --depth or -d: 指定跟进连接请求的层次数(默认: 1)
  • --verbose or -v: 显示每一个请求的详细信息
$ scrapy parse http://www.example.com/ -c parse_item

十一、settings

  • 语法: scrapy settings [options]

    获取Scrapy的设定

    在项目中运行时,该命令将会输出项目的设定值,不然输出Scrapy默认设定。

    $ scrapy settings --get BOT_NAME
    scrapybot
    $ scrapy settings --get DOWNLOAD_DELAY
    0

    十二、runspider

  • 在未建立项目的状况下,运行一个编写在Python文件中的spider。
  • 语法: scrapy runspider <spider_file.py>
$ scrapy runspider myspider.py

1三、其余命令

version:

  • 语法: scrapy version [-v]
  • 输出Scrapy版本。配合 -v 运行时,该命令同时输出Python, Twisted以及平台的信息,方便bug提交。

deploy

  • 将项目部署到Scrapyd服务。查看 部署您的项目 。
  • 语法: scrapy deploy <target:project> -l <target> -L ]

bench

  • 运行benchmark测试。 Benchmarking 。
  • 语法: scrapy bench

1四、自定义项目命令

能够经过 COMMANDS_MODULE 来添加您本身的项目命令。您能够以 scrapy/commands 中Scrapy commands为例来了解如何实现您的命令。

COMMANDS_MODULE

Default: '' (empty string)

用于查找添加自定义Scrapy命令的模块。

相关文章
相关标签/搜索