我只是在研究请求库(http://docs.python-requests.org/en/latest/),并遇到了如何使用请求获取带有 cookie 的页面的问题。
例如:
url2= 'https://passport.baidu.com'
parsedCookies={'PTOKEN': '412f...', 'BDUSS': 'hnN2...', ...} #Sorry that the cookies value is replaced by ... for instance of privacy
req = requests.get(url2, cookies=parsedCookies)
text=req.text.encode('utf-8','ignore')
f=open('before.html','w')
f.write(text)
f.close()
req.close()
当我使用上面的代码来获取页面时,它只是将登录页面保存到'before.html'而不是登录页面,它指的是实际上我没有成功登录。
但是如果我使用 URLlib2 来获取页面,它会按预期正常工作。
parsedCookies="PTOKEN=412f...;BDUSS=hnN2...;..." #Different format but same content with the aboved cookies
req = urllib2.Request(url2)
req.add_header('Cookie', parsedCookies)
ret = urllib2.urlopen(req)
f=open('before_urllib2.html','w')
f.write(ret.read())
f.close()
ret.close()
当我使用这些代码时,它会将登录页面保存在before_urllib2.html
.
--
我的代码有错误吗?任何答复将不胜感激。