Python中如何獲得訪問網頁所返回的cookie
阿新 • • 發佈:2019-02-05
http://www.crifan.com/get_cookie_from_web_response_in_python/
用Python指令碼模擬登陸百度空間。
需要先獲得最開始登陸的百度空間網頁所返回的cookie。
【解決過程】
1.搜了一番,最後參考這個:
實現了對應的程式碼:
?1 2 3 4 5 6 7 |
cj = cookielib.CookieJar();
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj));
urllib2.install_opener(opener); resp = urllib2.urlopen(loginUrl);
for index,
cookie in enumerate (cj):
print '[' ,index, ']' ,cookie;
|
然後就可以獲得對應的cookie值了:
[ 0 ] <Cookie BAIDUID=D068154CA8839A493550F5CD50CB7E40:FG=1 for .baidu.com/> |
【後記 2013-08-12】
1.後來由於百度空間改版,其內部機制變化,導致現在,用同樣的程式碼,測試而得到的結果只有1個cookie了
程式碼如下:
1 2 3 4 5 6 7 8 9 10 |
import cookielib;
import urllib2;
cj = cookielib.CookieJar();
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj));
urllib2.install_opener(opener);
resp = urllib2.urlopen(loginUrl); for index,
cookie in enumerate (cj):
print '[' ,index, ']' ,cookie;
|
輸出如下:
1 |
[
0 ] <Cookie BAIDUID=0409455CE240254B348EF29D1BDF5135:FG=1 for .baidu.com/>
|