【问题】
用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/> |
转载请注明:在路上 » 【已解决】Python中如何获得访问网页所返回的cookie