Python怎样实现Cookie自动登录?_全球速讯
2023-07-03 10:26:14 来源:今日头条
【资料图】
当用户首次登录一个网站时,网站往往会要求用户输入用户名和密码,并且给出自动登录选项供用户勾选。用户如果勾选了自动登录选项,那么在下一次访问该网站时,不用输入用户名和密码便可以登录,这是因为第一次登录时服务器发送了包含登录凭证的Cookie到用户硬盘上,第二次登录时浏览器发送了Cookie,服务器验证Cookie后就识别了用户的身份,用户便无须输入用户名和密码。
Cookie(有时也用其复数形式Cookies)是指某些网站为了辨别用户身份、进行会话跟踪,而暂时存储在客户端的一段文本数据(通常经过加密)。
在Requests库中,发送请求时可以通过两种方式携带Cookie,一种方式是直接将包含Cookie信息的请求头传入请求函数的headers参数;另一种方式是将Cookie信息传入请求函数的cookies参数。不过,cookies参数需要接收一个RequestsCookieJar类的对象,该对象类似于一个字典,会以名称(Name)与值(Value)的形式存储Cookie。
下面以登录后的百度首页为例,分别通过上述两种方式演示如何使用Requests实现Cookie登录。
第1种方式的实现代码如下:
import requestsheaders = { "cookie":‘此处填写登录百度网站后查看的Cookie信息’,设置字段Cookie "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4)" "ApplewebKit/537.36 (KHTML, like Gecko)" "Chrome/53.0.2785.116 Safari/537.36",}€设置字段User-Agentresponse = requests.get("https://www.baidu.com/", headers=headers)print(response.tgkt)
第2种方式的实现代码如下:
import requestsheader = {"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) " "AppleWebKit/537.36 (KHTML,1ike Gecko)" "Chrome/53.0.2785.116 Safari/537.36"}# 准备Cookiecookie="此处填写登录百度网站后查看的cookie信息"# 创建RequestsCookieJar类的对象jar_obj = requests.cookies.RequestsCookieJar()# 以逗号为分隔符分隔Cookie.并将获得的键和值保存至jar_obj中for temp in cookie.split(";"): key, value = temp.split("=", 1) jar_obj.set(key, value)response = requests.get("https://www.baidu.com/", headers=header, cookies=jar_obj)print (response,text)
上述两段代码的运行结果如下。
······"userAttr":Number("")|| 0,"username":"Itcast_001122","unametype":"2","userIsSkined":"off","userIsNewSkined":"off","userSkinName":"","userSkinOpacity":"70",······
由加粗部分的代码可以看出,程序输出的网页源代码包含了用户名Itcast_001122。这说明我们成功地访问了登录后的百度首页。
标签:
[责任编辑:renwu001]
相关阅读
- (2015-08-11)中芯国际为何率先量产28nm的骁龙410?
- (2015-08-11)为了卖炫感枪,他又做了一款叫VR游戏播放器的产品
- (2015-08-11)小米5屏幕哪家造?三星给出AMOLED
- (2015-08-09)掌贝微POS:我们不做淘宝,要做O2O中最后的一环
- (2015-08-09)回顾暴雪科隆展:诚意满满,让你找回青春
- (2015-08-09)这个户外“机器人”已经学会了躲雨
- (2023-07-03)Python怎样实现Cookie自动登录?_全球速讯
- (2023-07-03)全球关注:2023年北京市朝阳区北外同文外国语学校录取分数线是多少?
- (2023-07-03)北京市中关村外国语学校入学考试都考什么?|每日关注
- (2023-07-03)请问:中考没考好国际学校笔试面试能过吗?-环球观点
- (2023-07-03)河北廊坊2023年中考成绩及一分一档表公布!7月5日开始志愿填报!
- (2023-07-03)盛泰集团(605138):股东雅戈尔服装累计减持公司1.02%股份 聚焦
- (2023-07-03)下半年看好啥?AI“一骑绝尘” 资金方向与散户思路“雷同”
- (2023-07-03)威领股份:6月30日融资买入1256.06万元,融资融券余额1.55亿元 热推荐
- (2023-07-03)天天热门:马斯克回应限流推特:离手机远点 多陪陪朋友和家人
- (2023-07-03)6月中国仓储指数发布:需求稳中有增 行业保持良好运行态势
- (2023-07-03)全球速递!学会计有多难_学会计真的很难吗
- (2023-07-03)【全球热闻】水利部淮河水利委员会连续会商部署近期强降雨防范工作
- (2023-07-03)中国物流与采购联合会:6月中国仓储指数为50.7% 仓储业务需求有所增长 天天通讯
- (2023-07-03)天天头条:6月中国仓储指数发布:需求稳中有增 行业保持良好运行态势
最近更新
- (2023-07-03)世界观点:复合集流体概念股开盘领涨
- (2023-07-03)观天下!民爆板块大幅走强
- (2023-07-03)当前热议!机器人概念开盘走高 东港股份、巨轮智能等涨停
- (2023-07-03)一体压铸概念走高 广东鸿图涨超9%-焦点快播
- (2023-07-03)无人驾驶概念震荡走强 德迈仕20%涨停|焦点讯息
- (2023-07-03)民航股异动拉升 吉祥航空涨超6%|天天新动态
- (2023-07-03)视讯!新时代中国调研行·长江篇丨浔阳江头文化公园绘就新“琵琶行”
- (2023-07-03)女子50米世界纪录 50米世界纪录
- (2023-07-03)北京近两年各区高中录取分数线&区排名汇总!2023中考生参考~ 全球新视野
- (2023-07-03)北京朝阳区户籍上朝阳区私立初中本区转学要求
- (2023-07-03)今热点:北京通州区私立小学口碑不错的学校推荐!这几所学校不能错过!
- (2023-07-03)全球聚焦:2023年北京朝阳区国际小学入学条件是什么样的?
- (2023-07-03)焦点报道:特斯拉第二季度全球汽车交付创纪录新高 降价策略奏效
- (2023-07-03)燃气热水器几升合适家用(燃气热水器几升合适)_观热点
- (2023-07-03)威马疑又停薪,仅发中高层工资!“讨债大军”攻陷官方微博 每日快讯
- (2023-07-03)工作做到群众心坎上
- (2023-07-03)莴笋可以生吃吗 莴笋生吃是什么味道?
- (2023-07-03)美国首都多家企业遭爆炸装置和燃烧瓶袭击 有店铺距国会仅几个街区
- (2023-07-03)今年第一次国家农产品质量安全抽检总体合格率为97.5%|环球热资讯
- (2023-07-03)长沙有人才市场吗_长沙的人才市场有几个都在哪简介介绍 视焦点讯