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 命令
- 作用:查看對應得scarpy配置信息
- 項目內部使用:查看項目配置信息
- 項目外部使用:查看項目默認配置信息
查看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