當前位置:
首頁 > 最新 > 走進成熟的爬蟲框架

走進成熟的爬蟲框架

今天簡單聊聊Scrapy的安裝。

前幾天有小夥伴留言說能不能介紹推薦一下爬蟲框架,我給他推薦了Scrapy,本來想偷個懶,推薦他去看官方文檔,裡面有一些demo代碼可供學習測試。結果收到回復說文檔中演示用到的網站已經無法訪問了。所以只能自己來簡單寫一下了,也算是自己一個學習記錄。

Scrapy是什麼?

定義介紹我也不複製粘貼了。簡單來說,Scrapy是一個中大型的爬蟲框架,框架的意義就在於幫你預設好了很多可以用的東西,讓你可以從複雜的數據流和底層控制中抽離出來,專心於頁面的解析即可完成中大項目爬蟲,甚至是分散式爬蟲。

但是爬蟲入門是不推薦直接從框架入手的,直接從框架入手會讓你頭暈目眩,覺得哪兒哪兒都看不懂,有點類似於還沒學會基礎的遣詞造句就直接套用模板寫成文章,自然是十分吃力的。所以還是推薦大家有一定的手寫爬蟲基礎再深入了解框架。(當然還沒有入門爬蟲的同學…可以催更我的爬蟲入門文章…)

那麼首先是安裝。

Python的版本選擇之前提過,推薦大家全面擁抱Python 3.x。

很久以前,大概是我剛入門學習Scrapy時,Scrapy還沒有支持Python 3.x,那時一部分爬蟲工程師把Scrapy不支持Python 3.x作為不進行遷移的理由。當然了,那時更具體的原因是Scrapy所依賴的twisted和mitmproxy不支持Python 3.x。

現在我依然推薦大家全面擁抱Python 3.x。

如果你還未安裝Python,推薦你按照這篇文章操作。

這次我們以本地環境來進行安裝(Windows+Anaconda),由於Python的跨平台特性,我們本地寫的代碼可以很容易遷移到別的電腦或伺服器使用。(當然了,從規範使用的角度上推薦大家使用單獨的env,或者直接使用docker或者vagrant,不過那就說來話長了…以後可以考慮單獨介紹)

按照慣例,我們直接使用 pip install scrapy 進行安裝。

那麼,你大概率會遇到這樣的錯誤:

具體的錯誤原因…缺少Microsoft Visual C++ 14.0…你也可以自己通過其他渠道解決,當然我們最推薦的做法是直接使用 conda install scrapy 命令(前提是你安裝了Anaconda而非普通Python)。

如果遇到寫入許可權錯誤,請用管理員模式運行cmd。

之後我們可以寫一個很小的demo,依然是官方案例中的DMOZ,DMOZ網站是一個著名的開放式分類目錄(Open DirectoryProject),原版的DMOZ已於去年的3月17日停止了運營,目前網站處於403狀態。但是網上大量過去的教程都是以DMOZ為案例的。我為大家找到了原DMOZ網站的靜態鏡像站,大家可以直接訪問 http://dmoztools.net/

大家按照官方文檔的步驟繼續做就可以了,後續的問題不大。

(http://scrapy-chs.readthedocs.io/zh_CN/0.24/intro/tutorial.html)

需要注意的就是工作目錄問題。

啟動Scrapy項目。

scrapy startproject tutorial

進入目錄,我們可以看到自動生成的一些文件,這些文件就是scrapy框架所需要的最基礎的組織結構。

: 項目的配置文件

: 該項目的python模塊。之後您將在此加入代碼。

: 項目中的item文件.

: 項目中的pipelines文件.

: 項目的設置文件.

: 放置spider代碼的目錄.

這些組織結構的具體定義我們之後會分篇具體介紹。今天不再贅述了,一篇文章寫的大而長的話,估計要改上好多天發不出去。還是寫一點算一點吧。

其實官方文檔已經寫的比較詳細了,不過有些東西還是不太好理解,手邊有一本專門講Scrapy的書,最近正在讀,會把一些讀書筆記和實際項目寫給大家。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 不二小段 的精彩文章:

TAG:不二小段 |