Scrapy框架的安裝及使用

2022-05-30 22:12:08 字數 2218 閱讀 3376

步驟1、環境準備

右擊ubuntu作業系統桌面,從彈出選單中選擇【open in terminal】命令 開啟終端。

通過【cd /home】切換到home目錄下。【ls】檢視該目錄下的所有內容。

圖1 切換目錄

【mkdir scrapy】在home目錄下建立scrapy資料夾。

圖2 建立資料夾

步驟2、scrapy安裝

【pip install scrapy】安裝爬蟲框架scrapy,(該框架虛擬機器已安裝,無需執行,製作參考)

圖3 安裝scrapy

【scrapy】已安裝成功,版本為1.5

圖4 驗證scrapy

步驟3、scrapy操作

在開始爬取之前,必須建立乙個新的scrapy專案

【cd scrapy】切換至scrapy的目錄

【scrapy startproject movie】建立scrapy專案,名為movie.

圖5 建立scrapy專案

【tree】檢視專案結構

scrapy.cfg 專案的配置資訊,主要為scrapy命令列工具提供乙個基礎的配置資訊。(真正爬蟲相關的配置資訊在settings.py檔案中)

items.py 設定資料儲存模板,用於結構化資料,如:django的model

pipelines 資料處理行為,如:一般結構化的資料持久化

spiders 爬蟲目錄,如:建立檔案,編寫爬蟲規則

圖6 專案結構

定義要抓取的資料

item 是儲存爬取到的資料的容器;其使用方法和python字典類似, 並且提供了額外保護機制來避免拼寫錯誤導致的未定義字段錯誤。

【vim item.py】編輯item檔案。

圖7 資料item

回車後按【i】進入編輯狀態。編輯資訊如下。獲取電影名字。

圖8 編輯資訊

編輯完畢後,按【esc】退出編輯狀態,【:wq】儲存並退出編輯框。

【cd spider】進入spider目錄,【vim meiju.py】回車後建立並編輯meiju檔案。

圖9 建立python檔案

回車後按【i】進入編輯狀態,編輯如下資訊。

spider是使用者編寫用於從單個**(或者一些**)爬取資料的類。

為了建立乙個spider,您必須繼承 scrapy.spider 類,且定義以下三個屬性:

name: 用於區別spider。 該名字必須是唯一的,您不可以為不同的spider設定相同的名字。

start_urls: 包含了spider在啟動時進行爬取的url列表。 因此,第乙個被獲取到的頁面將是其中之一。 後續的url則從初始的url獲取到的資料中提取。

圖10 編輯python檔案

【cd ../..】切換專案的目錄。【scrapy crawl meiju】執行該專案

圖11 執行scrapy專案

根據列印的資訊判斷請求成功。

圖12 資訊列印

在瀏覽器中輸入url,根據判斷得知。

【//ul[@class=」top-list fn-clear」]/li】所有的電影資訊

【./h5/a/@title】電影的名稱

圖13 分析url

再次編輯meiju檔案。

圖14 編輯python檔案

修改程式如下。通過選擇器(selectors)用xpath來提取資料

圖15 選擇器

編輯完畢後,按【esc】退出編輯狀態,【:wq】儲存並退出編輯框。

【cd ..】切換上級目錄。

圖16 編輯settings.py檔案

回車後按【i】進入編輯狀態。編輯資訊如下。獲取電影名字。(只需在檔案中找到該行,取消掉注釋修改大小即可,)

圖17 編輯檔案

編輯完畢後,按【esc】退出編輯狀態,【:wq】儲存並退出編輯框。

【vim pipelines.py】編輯pipelines.py檔案。

圖18 編輯pipelines檔案

回車後按【i】進入編輯狀態。編輯資訊如下。將電影名字資料寫入txt檔案中。

圖19 資料寫入

編輯完畢後,按【esc】退出編輯狀態,【:wq】儲存並退出編輯框。

【cd ..】切換至上級目錄。

【scrapy crawl meiju】執行專案進行爬取

圖20 執行scrapy專案

【ls】檢視該目錄下生成乙個movies.txt檔案。

【cat movies.txt】爬取到前100個電影名字。

圖21 檢視執行效果

scrapy框架使用及案例

使用pycharm的terminal終端 以下命令都是在terminal終端中執行 建立乙個工程 scrapy startproject pro cd pro 在spiders子目錄中建立乙個爬蟲檔案 scrapy genspider spidername www.com 執行工程 scrapy c...

scrapy框架初識及使用

一.什麼是scrapy?二.安裝 linux pip3 install scrapywindows a.pip3 install wheel d.pip3 install pywin32 e.pip3 install scrapy三.基礎使用 1.建立專案 scrapy startproject 專...

Scrapy 安裝及使用

目前只支援python2 pip install scrapy公升級scrapy pip install upgrade scrapy和scrapy打交道時,你所遵循得最通用的流程是ur im流程。進入你想儲存專案的目錄 scrapy startproject tutorialtutorial sc...