人生苦短,我用Python
Scrapy安裝
1、windows下安裝流程:
命令列執行pip Install scrapy安裝scrapy,如果你已經配置過環境變數,則任意開啟命令列視窗,輸入pip install scrapy命令,則可以執行安裝。若沒有配置過環境變數,則進入到你python的安裝路徑下,shift+右鍵,在此處開啟命令列視窗,然後輸入pip install scrapy安裝。
特別說明:windows下安裝,因為某些包不相容,會出現安裝失敗的情況,一般是twisted安裝失敗,當然也會可能其他包安裝失敗,具體情況根據自己安裝提示。若twisted安裝失敗,則去Python Extension Packages for Windows地址去搜尋twisted,選好自己對應的版本,不然會安裝失敗,下載完之後,到下載檔案所在位置,shift+右鍵,在此處開啟命令列視窗,輸入pip install xxx.whl(完整檔名)。安裝完成之後,開啟命令列:輸入scrapy -h驗證是否安裝成功!若提示未成功,則重新執行pip install scrapy命令。
2、Mac系統安裝流程
可以直接使用pip install scrapy進行安裝
如果沒有安裝pip,可是使用以下命令列語句先安裝pip:
Scrapy爬蟲的使用
一個最基本的爬蟲只需要兩部分組成:Spider(爬蟲)、Pipeline(管道)
Spider(爬蟲):定義瞭如何爬取某個網站,包括了爬取的動作(例如是否跟進連結)以及如何從網頁的內容中提取結構化資料(爬取item)。簡單來說,Spider就是定義爬取的動作及分析某個網頁的地方。
Pipeline(管道):每個專案管道元件是一個實現簡單方法的Python類。他們接受一個專案並對其執行操作,還決定該專案是否應該繼續通過流水線或被丟棄並且不再被處理。
Pipeline(管道的作用):
Item管道的主要責任是負責處理由蜘蛛從網頁中抽取的item,它的主要任務是清洗、驗證和儲存資料。當頁面被蜘蛛解析後,將被髮送到item管道,並經過幾個特定的次序處理資料。
專案管道的用途:
- 清理HTML資料
- 驗證抓取的資料(檢查專案是否包含特定欄位)
- 檢查重複
- 將刮取的專案儲存在資料庫
第一個Scrapy專案
1、在你要存放專案的目錄下,shift+右鍵在此處開啟命令列,然後輸入:scrapy startproject MyFirstDemo,建立成功,提示如圖所示:
scrapy 框架檔案解析:
- MyFirstDemo/:該專案的Python模組,之後將在此處加入程式碼
- MyFirstDemo/spiders/:放置spider程式碼的目錄,在命令列使用“scrapy genspider+爬蟲名”生成的--spider檔案將會被放在此目錄下。
- MyFirstDemo/items.py:專案中的item檔案
- MyFirstDemo/pipelines.py:專案中的pipelines檔案
- MyFirstDemo/settings.py:專案的設定檔案
- scrapy.cfg:專案的配置檔案,一般不需要修改,也不能刪除
建立spider檔案:在cmd中切換到MyFirstDemo檔案中,輸入“scrapy genspider spider_myfirstdemo baidu.com”,在spider下面生成spider_city_58檔案,程式碼如下:
Scrapy基本方法和屬性:
- 爬蟲名稱:name屬性
- 啟動方法:start_requests(),或start_urls()啟動
- 預設解析方法:parse()
- 啟動連結列表:start_urls()屬性