該如何循序漸進學習Python爬蟲

對于爬蟲,可以選擇任何一種語言,只是實現(xiàn)的方式不一樣,效率的問題??梢允荍ava、Ruby、Perl......對于爬蟲,Python應該算是優(yōu)選的語言,門檻低,簡潔,邏輯清晰,庫比較豐富......

缺點:

1、動態(tài)性,速度不是很快,對于大型爬蟲可以實現(xiàn)起來還需要其他擴展。

2、對于多線程支持不是很好,主要還是GIL鎖的緣故,網上大部分提倡多進程。

......

對于Python爬蟲,還是和其他任何事物一樣,萬丈高樓平地起,Python基礎自然要熟悉,對于OOP也是要盡量熟悉。

具體學習流程:

1、Python基礎(標準庫和方法,包括OOP)

2、html/css簡單的基礎知識。

3、Python 標準模塊re、urllib內的方法和屬性,如何包裝瀏覽器頭、cookies、proxy等等。

4、循序漸進學習一些第三方庫requests來代替標準庫

5、在解析網頁源碼的時候發(fā)現(xiàn)re模塊的寫法過于復雜和難懂,所有會選擇beautifulsoup來解析

6、后又發(fā)現(xiàn)beautifulsoup庫也難免有些晦澀,接著學習lxml庫,速度應該算是比較快的在Python里面。

7、在學習了如何解析網頁源碼的過程中發(fā)現(xiàn)到很多網頁是JavaScript渲染的,所以應該學習到selenium、PhantomJS模塊(速度相對比較慢,但是完全夠用)

8、學到這里應該算學習爬蟲到了一定的水平,基本上可以解決一些常見的網站數(shù)據抓取,然而很多時候你會發(fā)現(xiàn)每次寫爬蟲的時候,都是要一步步去實現(xiàn)一些重復的工作,所以我們可以自己寫一個自定義的為自己使用的類,這樣隨時可以去調用,比如直接輸入一個url就可以直接構造headers去爬取網頁,這里有一個我自己寫類,里面包括可以自動簡單的構造一個headers,還會隨機更換瀏覽器頭等等,還可以去模擬selenium 模擬鼠標滾動滾動條,也就是說要提前安裝selenium,request,lxml等等,這里不多說了,直接下載放入Python第三方目錄即可,基本上沒有什么新東西,只是方便,下載地址:Crawler

9、接下來就是重頭戲:scrapy,scrapy不適合剛剛接觸爬蟲的人,應該學習一些爬蟲基礎,因為scrapy里面包含了前面大部分基礎知識如。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • # Python 資源大全中文版 我想很多程序員應該記得 GitHub 上有一個 Awesome - XXX 系列...
    aimaile閱讀 26,846評論 6 427
  • 爬蟲文章 in 簡書程序員專題: like:128 - Python 爬取落網音樂 like:127 - 【圖文詳...
    treelake閱讀 29,754評論 33 638
  • 爬蟲文章 in 簡書程序員專題: like:128-Python 爬取落網音樂 like:127-【圖文詳解】py...
    喜歡吃栗子閱讀 22,757評論 4 411
  • 對很多人來說 去往另一個城市上學是一種鍛煉自己的方式,而對我而言,卻似乎是我長這么大做過的最刺激也是最后悔的事。在...
    一個肉丸子1閱讀 276評論 0 0
  • 大望路的廣告牌總是換的好快……很久很久以前是放在你手心里的急支糖漿,走著走著……后來不知道變成了什么……因為我看不...
    呼呼你閱讀 434評論 0 0

友情鏈接更多精彩內容