爬蟲Scrapy-常用工具命令行

scrapy:工具命令行分爲兩種:全局命令和項目命令。
注意:全局命令可以在全局中直接運行,而項目命令必須在scrapy項目中運行。

01-全局命令

查看全局命令

scrapy -h
Available commands:
  bench         Run quick benchmark test
  check         Check spider contracts
  crawl         Run a spider
  edit          Edit spider
  fetch         Fetch a URL using the Scrapy downloader
  genspider     Generate new spider using pre-defined templates
  list          List available spiders
  parse         Parse URL (using its spider) and print the results
  runspider     Run a self-contained spider (without creating a project)
  settings      Get settings values
  shell         Interactive scraping console
  startproject  Create new project
  version       Print Scrapy version
  view          Open URL in browser, as seen by Scrapy

注意:bench命令比較特殊,仍歸爲項目命令。

(1)fetch命令

作用:主要用來顯示爬蟲的爬取過程。
實例:

scrapy fetch http://www.baidu.com

注意:在項目目錄之外調用,會調用scrapy默認爬蟲來爬取,如果在牧歌項目目錄進行調用,會調用帶項目中的爬蟲進行爬取。

我們在使用fetch命令的是後也可以,使用某些參數進行相應控制。

--headers 顯示爬去網頁的頭信息
--nolog  不顯示日誌信息
--spider== SPIDER 控制使用那個爬蟲
--logfile ==FILE 制定存儲日誌信息文件
--loglevel=LEVEL 控制日誌等級

實例:

scrapy fetch --headers --nolog shttp://www.baidu.com

(2) runspider命令

作用:不依託scrapy的爬蟲項目,直接運行一個爬蟲文件。

實例:(first.py 爲爬蟲文件)

scrapy runspider --loglevel=INFO first.py

(3)settings 命令

  1. 作用:查看對應得scarpy配置信息
  2. 項目內部使用:查看項目配置信息
  3. 項目外部使用:查看項目默認配置信息

查看qianmu項目的BOT_NAME值

scrapy settings --get BOT_NAME qianmu

(4)shell命令

作用:啓動scrapy的交互式終端(Scrapy shell),方便開發與調試

scrapy shell http://www.baidu.com --nolog
ti = sel.xpath("/html/head/title")
print(ti)
exit()

(5)startproject 命令

作用:用於創建項目。

scrapy startproject mm

(6)version 命令

作用:查看版本信息

scrapy version -v

(7)view 命令

作用:實現下載某個網頁並用瀏覽器查看的功能

scrapy view http://news.163.com/

02-項目命令

基於項目使用,先進入項目目錄。一般只能在項目文件夾中使用。
主要有:bench,check,crawl,edit,genspider,list,parse

(1)Bench 命令

作用:可以測試本地硬件性能,每分鐘爬取網頁條數。

scrapy bench

(2)Genspider 命令

作用:快速創建爬蟲文件。

查看當前爬蟲模板

scrapy genspider -l

Available templates:
  basic
  crawl
  csvfeed
  xmlfeed

基於模板生成爬蟲文件

scrapy genspider -t basic weisuen iqianyue.com

查看爬蟲模板內容

scrapy genspider -d csvfeed

(3) check 命令

作用:爬蟲測試比較麻煩,所以使用合同(contract)的方式對爬蟲進行測試。跟爬蟲名不是爬蟲項目名。

scrapy check weisuen

Ran 0 contracts in 0.000s

OK

(4)crawl 命令

作用:啓動爬蟲文件,跟爬蟲名不是爬蟲項目名。

scrapy crawl weisuen --loglevel=INFO

(5)list 命令

作用:列出當前可使用的爬蟲文件。

scrapy list

(6)edit 命令

作用:可以直接打開對應的編輯器對爬蟲文件編輯,在windows可能會出現一點問題,但是在liunx很方便。

scrapy edit weisuen

(7)parse 命令

作用:獲取指定的url網址,並且用對應的爬蟲文件進行處理和分析。

scrapy parse http://www.baidu.com --nolog

查看parse參數

scrapy parse -h

可以看到分爲:普通參數和全局參數。

Options
=======
--help, -h              查看命令ow this help message and exit
--spider=SPIDER         強行指定某個爬蟲文件spider進行處理
-a NAME=VALUE           設置spider參數,可能會重複
--pipelines             通過pipelines來處理items
--nolinks               不展示提取到的鏈接信息
--noitems               不展示得到的items
--nocolour              輸出結果顏色不高亮
--rules, -r             使用CrawlSpider規則去處理回掉函數
--callback=CALLBACK, -c CALLBACK
                        指定spider中用於處理返回的響應的回掉函數
--depth=DEPTH, -d DEPTH
                        設置爬行深度默認深度是1.
--verbose, -v           顯示每層的詳細信息

實例

scrapy parse http://www.baidu.com --spider=weisuen --nolog
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章