如果你正在學習編程,那麼「爬蟲」絕對是你不可忽視的。那麼,學習python爬蟲之前需要哪些準備?
一顆熱愛學習,不屈不撓的心一臺有鍵盤的電腦(什麼系統都行。我用的os x,所以例子會以這個為準)html相關的一些知識。不需要精通,能懂一點就行Python的基礎語法知識 。
請點擊此處輸入圖片描述
當這些你都具備了,這個時候你需要學習:
0.基本的爬蟲工作原理
1.基本的http抓取工具:scrapy
2.Bloom Filter: Bloom Filters by Example
3.如果需要大規模網頁抓取,你需要學習分布式爬蟲的概念。簡單來說,你只要學會怎樣維護一個所有集群機器能夠有效分享的分布式隊列就好。最簡單的實現是python-rq: https://github.com/nvie/rq
4.rq和Scrapy的結合:darkrho/scrapy-redis · GitHub
5.後續處理:網頁析取(grangier/python-goose · GitHub),存儲(Mongodb)
請點擊此處輸入圖片描述
python的火,很大原因就是各種好用的模塊,這些模塊是居家旅行爬網站常備的——
NO.1 F12 開發者工具
看原始碼:快速定位元素分析xpath:1、此處建議谷歌系瀏覽器,可以在源碼界面直接右鍵看
請點擊此處輸入圖片描述
NO.2 抓包工具
推薦httpfox,火狐瀏覽器下的插件,比谷歌火狐系自帶的F12工具都要好,可以方便查看網站收包發包的信息
請點擊此處輸入圖片描述
NO.3 XPATH CHECKER (火狐插件)
請點擊此處輸入圖片描述
非常不錯的xpath測試工具,不過也有幾個小缺點,:
xpath checker生成的是絕對路徑,遇到一些動態生成的圖標(常見的有列表翻頁按鈕等),飄忽不定的絕對路徑很有可能造成錯誤,所以這裡建議在真正分析的時候,只是作為參考記得把如下圖xpath框裡的「x:」去掉,貌似這個是早期版本xpath的語法,目前已經和一些模塊不兼容(比如scrapy),還是刪去避免報錯。
請點擊此處輸入圖片描述
NO.4 正則表達測試工具
在線正則表達式測試 ,拿來多練練手,也輔助分析!裡面有很多現成的正則表達式可以用,也可以進行參考!
請點擊此處輸入圖片描述