python通过本地保存的cookie文件实现登录并访问相关网页

#_*_ coding:UTF-8 _*_
import cookielib
import urllib2
import sys
reload(sys)
sys.setdefaultencoding('utf-8')

cookie=cookielib.MozillaCookieJar()
cookie.load('cookie.txt',ignore_expires=True,ignore_discard=True)
req=urllib2.Request('http://msg.csdn.net/')
opener=urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie))
urllib2.install_opener(opener)
response=urllib2.urlopen(req)
print response.read()

注:cookie文件可以使用火狐浏览器登录网站后,按F12,导出cookie文件即可,也可以通过上次python登录时保存cookie文件,但是后一种对于复杂验证码的情况不适用。
另:通过火狐浏览器直接导出的cookie文件需要在开头加上# Netscape HTTP Cookie File 指定cookie文件的类型,运行时可能出现invalid Netscape format cookies file错误,是由于cookie文件中有的行需要加tab键,具体的解决方案还有待摸索,也希望知道的人可以回复一下,不胜感激!

你可能感兴趣的:(网络爬虫)