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命令的模塊。

相關文章
相關標籤/搜索