当前位置: 首页 > 后端技术 > Python

认识爬虫:提取网站cookie信息,利用cookie信息登录

时间:2023-03-26 17:37:51 Python

为什么要用cookie信息进行爬取?做后端的朋友都知道,一般情况下,在服务端发布接口需要进行身份信息验证,验证方式是通过cookie信息中包含的身份验证来进行验证。身份验证通过后,才能获取响应接口的信息。因此,在爬取过程中掌握这一点是极其必要的。否则只能爬取一些不需要验证的公开信息。话不多说,下面进入实战环节。1.导入依赖的第三方扩展库1#-*-coding:UTF-8-*-23#导入urllib库,对请求参数进行编码4importurllib56#导入urllib2库,完成网络请求7importurllib289#导入操作cookie信息的cookielib库10导入cookielib2,登录网站提取cookie信息保存1#设置文件路径2filename=u'usr/load/cookie.txt'34#创建操作cookie信息的MozillaCookieJar对象5cookie_obj=cookielib.MozillaCookieJar(filename)6#构建opener对象7opener_obj=urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie_obj))89#构建用户名、密码和编码10params=urllib.urlencode({11'account':'000000',12'passwd':'000000'13})1415#定义网站登录地址16login_url='http://wefd.com/login'1718#向服务器发送请求,实现用户名/密码登录19result=opener_obj.open(url=login_url,data=params)2021#保存cookie信息22cookie_obj.save(ignore_discard=True,ignore_expires=True)3.提取保存的cookie信息,使用cookie信息完成登录1#创建MozillaCookieJar实例对象,用于操作Cookie信息2cookie_obj=cookielib.MozillaCookieJar()34#设置文件路径5filename=u'usr/load/cookie.txt'67#加载cookie信息到MozillaCookieJar对象8cookie_obj.load(filename,ignore_discard=True,ignore_expires=True)910#定义网站登录地址11login_url='http://wefd.com/login'1213#CreateRequestrequest14request=urllib2.Request(login_url)1516#Buildopener对象,并添加cookie信息17opener_obj=urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie_obj))1819#执行登录请求20response=opener_obj.open(request)21printresponse.read()更多精彩进微信公众号【Python集中营】】,专注python技术栈,数据采集,交流社区,干货分享,期待你的加入~