urllib和urllib2之間PK
1、在python中,urllib和urllib2不可相互替代的。 整體來說,urllib2是urllib的增強,但是urllib中有urllib2中所沒有的函數(shù)。
urllib2可以用urllib2.openurl中設置Request參數(shù),來修改Header頭。如果你訪問一個網(wǎng)站,想更改User Agent(可以偽裝你的瀏覽器),你就要用urllib2.
urllib支持設置編碼的函數(shù),urllib.urlencode,在模擬登陸的時候,經(jīng)常要post編碼之后的參數(shù),所以要想不使用第三方庫完成模擬登錄,你就需要使用urllib。
urllib一般和urllib2一起搭配使用
2、urllib 和urllib2都是接受URL請求的相關模塊,但是提供了不同的功能。兩個最顯著的不同如下:
urllib提供urlencode方法用來GET查詢字符串的產(chǎn)生,而urllib2沒有。這是為何urllib常和urllib2一起使用的原因。
urllib2可以接受一個Request類的實例來設置URL請求的headers,urllib僅可以接受URL。這意味著,你不可以偽裝你的User Agent字符串等(偽裝瀏覽器)。
urllib2模塊比較優(yōu)勢的地方是urlliburllib2.urlopen可以接受Request對象作為參數(shù),從而可以控制HTTP Request的header部分。
urllib2模塊沒有加入urllib.urlretrieve函數(shù)以及urllib.quote等一系列quote和unquote功能,因此有時也需要urllib的輔助
urllib2在python3中被修改為urllib.request。
urllib2安裝
pip install urllib2
urllib2使用方法
python3系列已經(jīng)沒有該庫,用urllib.request代替了,但是可以這樣使用
import urllib.request
本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請
點擊舉報。