Win32 Python3.6爬蟲-Scrapy簡介與安裝

一、Scrapy介紹

Scrapy是Python開發的一個快速、高層次的屏幕抓取和web抓取框架,用于抓取web站點并從頁面中提取結構化的數據。Scrapy用途廣泛,可以用于數據挖掘、監測和自動化測試。

? ——來源于百度百科

使用Scrapy爬取一個網頁需四步驟:

  1. 創建一個Scrapy項目;
  2. 定義Item容器;
  3. 編寫爬蟲;
  4. 儲存內容。

下圖展現的是Scrapy的架構,包括組件及在系統中發生的數據流(圖中綠色箭頭)。

Scrapy
Scrapy
引擎(Scrapy Engine)

爬蟲工作的核心,負責控制數據流在系統中所有組件中流動,并在相應動作發生時觸發事件。

調度器(Scheduler)

從引擎接受request并將他們入隊,以便之后引擎請求他們時提供給引擎。

下載器(Downloader)

下載器負責獲取頁面數據并提供給引擎,而后提供給spider。

爬蟲(Spiders)

用戶編寫用于分析由下載器返回的response,并提取出item和額外跟進的URL的類。

Item Pipeline負責處理被spider提取出來的item。典型的處理有清理、驗證及持久化(例如存取到數據庫中)。

接下來是兩個中間件,它們用于提供一個簡便的機制,通過插入自定義代碼來擴展Scrapy的功能。

下載器中間件(Downloader middlewares)

在引擎及下載器之間的特定鉤子(specific hook),處理Downloader傳遞給引擎的response。

Spider中間件(Spider middlewares)

在引擎及Spider之間的特定鉤子(specific hook),處理spider的輸入(就是接收來自下載器的response)和輸出(就是發送items給item pipeline以及發送requests給調度器)。

二、安裝

命令窗口輸入:pip install scrapy,順利的話能安裝成功。安裝完成之后輸入scrapy,出現如下圖所示,才表明完全安裝成功:

運行Scrapy

若不能一次性成功安裝,則需安裝對應版本的以下模塊:

pip install wheel
pip install lxml
# 安裝lxml3.8.0后,提示etree找不到;改安裝3.7.3版才解決這個問題
pip install pyOpenSSL

然后,http://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted 下載相應版本的Twisted-17.5.0。命令窗口切換到該文件所在目錄,pip安裝,代碼如下:

pip install Twisted?17.5.0?cp36?cp36m?win32.whl # 包含后綴的文件全名

這樣,Scrapy應該就能正常安裝了。

但是,有的電腦還是Scrapy不能成功運行,提示沒有win32api,則需安裝win32py,下載地址:https://sourceforge.net/projects/pywin32/files/ ,下載相應版本的exe文件,運行,安裝成功后,Scrapy就能成功運行了。


以上是我在安裝過程中遇到的問題,如果有其他錯誤,歡迎交流探討!

安裝只是第一步,后續將用Scrapy創建項目,以便熟悉。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • scrapy學習筆記(有示例版) 我的博客 scrapy學習筆記1.使用scrapy1.1創建工程1.2創建爬蟲模...
    陳思煜閱讀 12,763評論 4 46
  • Python版本管理:pyenv和pyenv-virtualenvScrapy爬蟲入門教程一 安裝和基本使用Scr...
    inke閱讀 60,518評論 6 99
  • 作為一個團隊的基層管理者,在評價自己下屬的時候,在選擇態度還是能力上,我會毫不猶豫地選擇態度。 態度是魂,是核心,...
    溫文思語閱讀 509評論 0 0
  • 今天回來晚了,原計劃聽一下課程好好學習,回來后亂七八糟瞎想一堆,突然想起簡書這軟件挺好,就搗鼓起下載到手機上了……...
    阿Miao閱讀 191評論 0 1