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