在使用python爬取网站信息的过程中,如果遇到http请求是无状态的,可以使用cookie在第一次登录后服务器返回一些数据(cookie)给浏览器,然后浏览器保存在本地。本文向大家介绍python爬虫保存cookie到本地的方法。
一、什么是cookie?
当用户通过浏览器首次访问一个域名时,访问的web服务器会给客户端发送数据,以保持web服务器与客户端之间的状态保持,这些数据就是cookie。
cookie是Internet站点创建的,为了辨别用户身份而储存在用户本地终端上的数据,cookie大部分都是加密的。
二、python爬虫保存cookie到本地
可以使用cookiejar的save方法,并且需要指定一个文件名
from urllib import request,parse from http.cookiejar import MozillaCookieJar #保存cookie到本地文件 cookiejar=MozillaCookieJar('cookie.txt') handler=request.HTTPCookieProcessor(cookiejar) opener=request.build_opener(handler) resp=opener.open('http://httpbin.org/cookies/set?freeform=course%3Daaa') #resp=opener.open('http://www.baidu.com/') #cookiejar.save() cookiejar.save(ignore_discard=True)
即将过期的cookie信息也会保存起来
# Netscape HTTP Cookie File # http://curl.haxx.se/rfc/cookie_spec.html # This is a generated file! Do not edit. .baidu.com TRUE / FALSE 1644745918 BAIDUID 91DC90905091E99B1D1B062FE3CF3549:FG=1 .baidu.com TRUE / FALSE 3760693565 BIDUPSID 91DC90905091E99B75D901DB55EEB2B9 .baidu.com TRUE / FALSE H_PS_PSSID 33423_33401_33344_33585_26350 .baidu.com TRUE / FALSE 3760693565 PSTM 1613209918 www.baidu.com FALSE / FALSE BDSVRTM 0 www.baidu.com FALSE / FALSE BD_HOME 1
以上就是python爬虫保存cookie到本地的介绍,cookie存储的数据量有限,不同的浏览器有不同的存储大小,但一般不超过4KB。因此使用cookie只能存储一些小量的数据哦~
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试