Python3爬蟲1-請求庫

獲取網頁源代碼是爬蟲的第一步,在Python中最常用的就是urllib和request兩個庫了。

urllib庫介紹

先說一下python版本變化前後的區別,這個曾給我帶來不小的麻煩。

  • 在Python2中,有內置的urllib、urllib2兩個庫,urllib 側重於 url 基本的請求構造,urllib2側重於 http 協議請求的處理。
  • 而在Python3中,已經不存在urllib2這個庫了,統一爲urllib。urllib作爲Python3的標準庫,基本上涵蓋了基礎的網絡請求功能。它包含如下四個模塊:
    1. request:它是最基本的HTTP請求模塊用來模擬發送請求;
    2. error:異常處理模塊,用來捕獲異常自定義處理方式,保證程序不會意外終止;
    3. parse:提供URL的處理方式,如拆分、解析、合併等;
    4. robotparser:用於處理網站的robots.txt文件,規範爬蟲。
  • 另外有一個擴展的urllib3,在urllib上增加了連接池等功能,兩者互相都有補充的部分。urllib3是服務於升級的http 1.1標準,擁有高效 http連接池管理及 http 代理服務的功能庫,從 urllib 到 urllib2和urllib3是順應互聯應用升級浪潮的,這股浪潮從通用的網絡連接服務到互聯網網絡的頭部應用:支持長連接的 http 訪問,網絡訪問不斷的便捷化。

使用Python3的urllib庫

參考簡書Python網絡請求urllib和urllib3詳解

requests庫介紹

urllib庫很全,但也有很多不方便之處。爲了更加方便的實現請求頭構造、Cookies等功能,Python中有更強大的request庫。

使用request庫

還是參考簡書【Requests】優雅到骨子裏的網絡請求庫,因爲他寫得真的很好。

源代碼有了,但需要正確的解析過濾才能稱得上數據。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章