如果你正在學習編程,那麼“爬蟲”絕對是你不可忽視的。那麼,學習python爬蟲之前需要哪些準備?

  • 一顆熱愛學習,不屈不撓的心

  • 一臺有鍵盤的電腦(什麼系統都行。我用的os x,所以例子會以這個爲準)

  • html相關的一些知識。不需要精通,能懂一點就行

  • Python的基礎語法知識

  • 當這些你都具備了,這個時候你需要學習:

  • 0.基本的爬蟲工作原理

    1.基本的http抓取工具:scrapy

    2.Bloom Filter: Bloom Filters by Example

    3.如果需要大規模網頁抓取,你需要學習分佈式爬蟲的概念。簡單來說,你只要學會怎樣維護一個所有集羣機器能夠有效分享的分佈式隊列就好。最簡單的實現是python-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測試工具,不過也有幾個小缺點,:

        1. xpath checker生成的是絕對路徑,遇到一些動態生成的圖標(常見的有列表翻頁按鈕等),飄忽不定的絕對路徑很有可能造成錯誤,所以這裏建議在真正分析的時候,只是作爲參考

記得把如下圖xpath框裏的“x:”去掉,貌似這個是早期版本xpath的語法,目前已經和一些模塊不兼容(比如scrapy),還是刪去避免報錯。

NO.4 正則表達測試工具

在線正則表達式測試 ,拿來多練練手,也輔助分析!裏面有很多現成的正則表達式可以用,也可以進行參考!

大數據學習交流羣 766988146 不管你是小白還是大牛,筆者我都挺歡迎,今天的源碼已經上傳到羣文件,不定期分享乾貨,
包括我自己整理的一份最新的適合2018年學習的大數據開發和零基礎入門教程,歡迎初學和進階中的小夥伴


相關文章