[python] view plain copy
req = urllib2.Request(
url=url,
data=postdata,
headers=headers
)
result = urllib2.urlopen(req)
我們知道,HTTP是無連線的狀態協議,但是客戶端和伺服器端需要保持一些相互資訊,比如cookie,有了cookie,伺服器才能知道剛才是這個使用者登入了網站,才會給予客戶端訪問一些頁面的許可權。所以我們需要儲存cookie,之後附帶cookie再來訪問網站,才能夠達到效果。這裡就需要Python的cookielib和urllib2等的配合,將cookielib繫結到urllib2在一起,就能夠在請求網頁的時候附帶cookie。在構造req請求之前可以獲取一個儲存cookies的物件,並把該物件和http處理器、http的handler資源以及urllib2的物件繫結在一起:
cj = cookielib.LWPCookieJar()
cookie_support = urllib2.HTTPCookieProcessor(cj)
# 建立一個opener,將儲存了cookie的http處理器,還有設定一個handler用於處理http的URL的開啟
opener = urllib2.build_opener(cookie_support, urllib2.HTT
[python] view plain copy
req = urllib2.Request(
[python] view plain copy
url=url,
data=postdata,
headers=headers
)
result = urllib2.urlopen(req)
我們知道,HTTP是無連線的狀態協議,但是客戶端和伺服器端需要保持一些相互資訊,比如cookie,有了cookie,伺服器才能知道剛才是這個使用者登入了網站,才會給予客戶端訪問一些頁面的許可權。所以我們需要儲存cookie,之後附帶cookie再來訪問網站,才能夠達到效果。這裡就需要Python的cookielib和urllib2等的配合,將cookielib繫結到urllib2在一起,就能夠在請求網頁的時候附帶cookie。在構造req請求之前可以獲取一個儲存cookies的物件,並把該物件和http處理器、http的handler資源以及urllib2的物件繫結在一起:
[python] view plain copy
cj = cookielib.LWPCookieJar()
cookie_support = urllib2.HTTPCookieProcessor(cj)
# 建立一個opener,將儲存了cookie的http處理器,還有設定一個handler用於處理http的URL的開啟
opener = urllib2.build_opener(cookie_support, urllib2.HTT