requests使用session保持会话

Requests通过Session保持会话,获取数据 最近在爬一个网站,通过登录之后,获取信息。 遇见的问题: 采取的selenium模拟登陆。因为有验证码的关系,直接用requests实现登陆不太方便,所以采用的selenium模拟登陆。 登陆之后,使用selenium中的get_cookies获取的cookie 并不能直接拿回数据,和数据所在的请求接口中的cookie有区别。 真实数据所在的... 阅读详情

在上一篇requests使用cookie模拟登陆豆瓣中,虽然使用cookie成功登录了,却存在一个问题,那就是会话不能保持,每个请求都得加上cookie进行身份验证,为了解决这一问题,需要使用另一种会话技术——session。

session: 服务端会话技术,客户的验证信息存放在服务端,能在每个请求中自动携带所有cookie,从而保持会话持续。

  • 模拟登陆
    仍旧以登陆豆瓣为例(cookie信息的手动获取看上一篇),实例如下:
	import requests
	cookie_info = 'your cookiedata'
	cookie_list = [info.strip().split('=') for info in cookie_info.split(';')]
	cookies = {data[0]:data[1].replace('"','') for data in cookie_list}
	url = 'https://www.douban.com/'
	headers = {
	            'User-Agent':'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.9 Safari/536.5',
	        }
	session = requests.session() #创建session对象
	requests.utils.add_dict_to_cookiejar(session.cookies,cookies) #将cookie信息存入cookiejar对象中
	res = session.get(url,headers=headers).content.decode() #进行请求
	print(res)

结果:
结果
如果,登陆成功。

  • 验证会话是否保持
    方法: 在上面的基础上,访问网站内需要登陆权限的页面,如:我的订单
	order_url = 'https://accounts.douban.com/passport/setting'
	order = session.get(order_url,headers=headers)
	print(order.text)

结果:
设置
会话保持成功

博主其他文章推荐:
[1] 【python实用特性】-切片

[2] 【python实用特性】- 迭代、可迭代对象、迭代器

[3] 【python实用特性】- 列表生成式

[4] 【python实用特性】- yield生成器

[5] Python+selenium实现自动爬取实例

[6] python爬取豆瓣Top250-改进版

[7] requests 设置请求头、代理

[8] matplotlib自定义坐标轴刻度完成20万+数据的可视化

requests登录后保持会话:Session与Cookie实战详解 HTTP请求是无状态的,一次登录成功并不代表后续请求都能被识别。在大规模数据采集与办公自动化场景中,基于Python requests库的脚本常因忽略会话维持而无法获取登录后数据。理解Cookie与Session机制是爬虫与自动化脚本开发的基础,而服务端返回的429状态码则提示请求过于频繁,需要合理退避。掌握基于requests.Session的登录态保持、请求头模拟、限流应对和会话失效自动重登等技巧,能显著提升脚本的稳定性和开发效率。本文结合实战经验,从接口侦察到数据浏览,系统梳理登录后业务系统数据顺畅访 阅读详情

相关推荐

Session保持:使用requests.Session维持会话续期,深入浅出Python爬虫:Session保持与连接复用完全指南

Session保持是Python爬虫开发中的核心技能之一。Session的本质:自动管理Cookie和连接池的HTTP会话容器实现原理:Cookie存储、自动附加、响应更新的循环机制性能优势:连接复用带来40%以上的性能提升实战应用:构建了完整的电商爬虫系统,包含登录、数据抓取、异常处理高级技巧:Token处理、反爬虫应对、会话持久化。

2201_76125261的博客 29

几种保持登录状态的方式

三种保持会话的方式 href:https://blog.youkuaiyun.com/bad_lee/article/details/82529528 (三)token机制保持会话 使用方法 cookie 和session依赖于浏览器,如果客户端不是浏览器,那么需要手动添加token(和cookie类似,也是登录凭证),将token添加到http header或者做为参数添加到url。 存在的问题 每次访问的...

个人纪录、总结! 1967

HFSS简要教程--无线能量传输线圈仿真

关于无限能量传输线圈仿真简要教程

asdmoon18的博客 2547

全网最细,Python接口自动化测试-Session会话保持(实战详细)

在接口测试的过程中,经常会遇到有些接口需要在登录的状态下才能请求,否则会提示请登录,那么怎样解决呢?可以通过session进行会话保持。session(会话)session,即会话。那么什么又是会话?我们来看一下会话的生存周期就能大致明白,如下:开始:客户端(通常是浏览器)–>发送第一个请求–>某应用服务器,彼此成功建立连接,即创建会话;会话中:客户端接着请求该应用服务器的其他资源;结束:关闭客户端(通常是浏览器)或者会话超时,会话结束。会话保持。

m0_70102063的博客 2175

死磕GMSSL通信-java/Netty系列(二)

Netty-tcnative再linux编译比较好编译,但是再window编译,我尝试了各种办法,总是编译失败,所以我采用半自动的方式进行编译,Netty-tcnative会生成临时文件,直接用vs打开,设置openssl的头文件和静态库路径,然后生成静态库,静态库改个名字放到jar包里边,其实自动编译也是这个原理哈哈O(∩_∩)O。直接传输五个证书的路径吗,之前有的是说要转成x509之类的,转来转去的有点麻烦,这个是直接传输证书路径,由底层gmssl去解析,格式必须是pem格式。然而,若项目已依赖于。

qq_36577699的博客 3025

DAX Studio--导出PowerBi数据---(不使用复制表如何快速导出csv文件 / 如何导出百万级/千万级乃至亿级的数据量)多图预警!

多图预警! 1、打开Dax 点击Connect 2、在这里选择正在打开的PowerBi文件,点击Contect 3、选择导出方式--File F、输入指令(输入 EVALUATE ' )单引号可以进行快速提示 5、点击Run 6、选择文件路径,以及保存类型等(一般情况下,我们常用的类型是 txt 或者 第一种 UTF-8 的csv 文件),点击保存即可,稍等片刻,导出完成! 7、导出完成,我这里总计是39W 行的数据量,约20+ 秒完成 ...

STR_Liang的博客 8158

Python之requests模块-session

http协议本身是无状态的,为了让请求之间保持状态,有了session和cookie机制。requests也提供了相应的方法去操纵它们。 requests中的session对象能够让我们跨http请求保持某些参数,即让同一个session对象发送的请求头携带某个指定的参数。当然,最常见的应用是它可以让cookie保持在后续的一串请求中。 下面,通过官方文档中的示例来了解如何使用它。 import requests s = requests.Session() # 第一步:发送一个请求,用于设置..

qq_42533216的博客 5072

从‘炼丹’到‘讲理’:物理信息神经网络(PINN)的硬约束 vs 软约束,我该选哪个?

本文深入探讨了物理信息神经网络(PINN)中硬约束与软约束的选择策略,帮助研究者在深度学习中有效融入物理先验知识。通过对比两种约束方法的实现复杂度、数据效率和计算性能,提供了针对材料科学和流体动力学等领域的实用决策指南,并介绍了自适应约束和混合约束等前沿技术。

weixin_42535703的博客 526

Python+requests 之session保持会话

session()方法 会话对象让你能够跨请求保持某些参数。它也会在同一个 Session 实例发出的所有请求之间保持 cookie,如果你向同一主机发送多个请求,底层的 TCP 连接将会被重用,从而带来显著的性能提升 session()中添加cookie session()中添加cookie有两种情况,第一种cookie传参为字典格式,则需要通过request...

SitVen 5984

【2021末九软工边缘人保研】川大-中科院网络中心-华师夏令营+哈工大本-中科院网络中心-西交-厦大-中山-武大-北航预推免

2021末九软工边缘人保研记录一、写在前面二、个人背景 一、写在前面 2020年计算机保研可谓是诸神黄昏,卷的头破血流(指我等菜鸡)。疫情的原因,今年的夏令营和预推免基本全部改为线上,机试取消,能不能拿到offer基本完全取决于背景以及面试表现(当然也有个别头铁非要机试,甚至笔试的学校)。大佬们offer收割不停,我等边缘人只能看着一封封拒信发呆。 这种情况下,只有985 Rank5%以及211 Rank2%之前的大佬能够较为轻松地拿到面试入场券。贴一个上交电院夏令营要求你们感受一下: 预推免相比起夏令营

weixin_43222706的博客 4235

连续相位调制通信调制方法的载波同步和定时同步研究及MATLAB仿真

本文将探讨CPM调制方法中的载波同步和定时同步问题,并提供MATLAB仿真源代码。本文讨论了连续相位调制通信中的载波同步和定时同步问题,并提供了相应的MATLAB仿真源代码。通过适当的载波同步和定时同步方法,可以实现对CPM信号的准确解调。希望本文对您理解连续相位调制通信调制方法的载波同步和定时同步问题有所帮助,同时也为您提供了一些MATLAB仿真实现的思路和示例代码。在CPM系统中,载波同步的主要任务是估计接收信号的载波频率偏移和相位偏移。在CPM系统中,常用的定时同步方法是基于自相关函数的峰值检测。

2301_79331230的博客 692

会话保持之Cookie&&Session

当你在浏览网页、登录社交媒体、购物网站,甚至使用各种在线服务时,你可能会遇到一个名为 “cookie” 的东西。那么,为什么需要这个 “cookie” ,什么是"cookie"?用简单的话来解释,“cookie” 就像是网站和你之间的一张小便条,它记录了一些信息,以便在你后续的访问中提供更好的体验。想象一下你在购物网站上购物的情景。当你把商品添加到购物车时,网站需要知道哪些商品是属于你的,以及你的购物车里有什么。这就是 “cookie” 的用处之一。

Aen_hen的博客 1280

YOLOv11改进策略【注意力机制篇】| SE、CBAM、ECA、CA、Swin Transformer等注意力机制全面解析与应用

本文详细介绍了五种主流的注意力机制及其在YOLOv11中的应用。通过合理的模块选择和位置部署,注意力机制能够显著提升目标检测性能。

QQ_778132974的博客 874

requests.session()会话保持

可能大家对session已经比较熟悉了,也大概了解了session的机制和原理,但是我们在做爬虫时如何会运用到session呢,就是接下来要讲到的会话保持。 首先说一下,为什么要进行会话保持的操作? requests库的session会话对象可以跨请求保持某些参数,说白了,就是比如你使用session成功的登录了某个网站,则在再次使用该session对象求求该网站的其他网页都会默认使用该ses...

学习python 8万+

点云从入门到精通技术详解100篇-基于 CBCT 与口内扫描数据的牙齿点云配准

口扫生成的三维牙模型只包含牙冠结构,容易受到唾液、食物残留等杂质的干扰。像精度,但其扫描成本较高,在公立医院的普及率较低。此外,口扫探入式的体。完整、精确的牙齿信息,有助于医生更好地进行数字化辅助诊疗,提高手术的预。可以表示上颌骨、下颌骨、牙冠以及牙根的位置和形状,但其扫描分辨率较低,精配准前实现粗略的预配准来确定点云间的初始位置,为精配准提供良好的配准。该算法通过计算点对间的距离确定源点云中的某一点在目标点云中的对应。算两点之间的欧氏距离,运算量较大,而且由于算法只考虑点集间的距离而忽略。

getusushu的博客 1640

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Python中的HTTP会话保持与requests.Session的使用

这对于需要登录验证的Web服务尤其重要,因为通过会话,用户可以在多个请求之间共享登录状态,而无需在每次请求时都重新进行身份验证。在Web开发中,HTTP会话保持是一种重要的机制,它允许服务器跟踪用户的连续请求,从而维持用户的状态或上下文信息。对象,你可以轻松地在多个请求之间共享状态信息,从而简化与需要登录验证的Web服务的交互。然后,通过该对象发送的所有请求都会自动共享相同的会话信息。会自动将这些cookies附加到请求中,从而保持用户的登录状态。对象可以跨多个请求保持状态,非常适合需要登录的Web服务。

weixin_73725158的博客 676

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

python的requests.session()_Python+requests之session保持会话

session()方法会话对象让你能够跨请求保持某些参数。它也会在同一个 Session 实例发出的所有请求之间保持 cookie,如果你向同一主机发送多个求,底层的 TCP 连接将会被重用,从而带来显著的性能提升session()中添加cookieimport requests# 字典格式cookie添加方法r = requests.session()cookie = {"cookie1": "...

weixin_39754267的博客 852

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

requests模拟登录豆瓣:session会话保持实战教程

HTTP协议本身是无状态的,服务器无法记住每个请求的发起者,因此需要借助Cookie来标识用户身份。在Python爬虫中,requests库是发起HTTP请求的常用工具,而requests.Session对象则能自动管理Cookie,让后续请求自动携带登录凭证,从而维持会话状态。理解session的原理,是处理需要登录才能访问的页面的基础。本文从模拟登录的常见痛点切入,讲解如何通过抓包分析登录接口,利用requests.Session完成豆瓣网的模拟登录,并保持会话状态,为批量采集个人页面数据提供可行方案。

weixin_34133829的博客 349

python 爬虫 1-1( requests.session()会话保持/模拟登录状态 )

文章目录写在前面1、requests.session简单例子2、模拟百度登录3、模拟领英网登录 写在前面 在某些网站抓取,或者app抓取时,有的时强制登陆,有的是不登陆返回的数据就是假的或者说是不完整的数据,这时就需要用到保持会话的功能 1、requests.session简单例子 参考源:https://www.cnblogs.com/qican/p/11153824.html reques...

这里的分享,都是干货 2901

python request保持连接_Python+requests 之session保持会话

session()方法会话对象让你能够跨请求保持某些参数。它也会在同一个 Session 实例发出的所有请求之间保持 cookie,如果你向同一主机发送多个请求,底层的 TCP 连接将会被重用,从而带来显著的性能提升session()中添加cookiesession()中添加cookie有两种情况,第一种cookie传参为字典格式,则需要通过requests.cookies.RequestsCoo...

weixin_39994270的博客 1226

requests.session保持会话

原文地址:https://blog.youkuaiyun.com/jyh_jack/article/details/82457953 如何使用requests后登录网站后,保持Session继续实现浏览、下载等效果? 两个request之前都是单独的请求,需要保持Session,重点看下面第二段代码。 下面的代码,实现的是一个网站通过request的post方式,用户名+密码登录。 1...

weixin_30699465的博客 302

requests模拟登录与Session会话保持:从登录原理到爬虫实战

HTTP无状态特性决定了每次请求都需重新认证,而Cookie与Session机制则为Web应用提供了会话记忆能力。在Python爬虫开发中,利用requests库的Session对象可以自动保存并携带Cookie,从而模拟真实用户的登录状态。理解登录接口的抓包分析、表单构造与请求头伪装,是突破静态页面采集瓶颈的关键一步。该技术广泛应用于需要身份验证的数据获取场景,如订单记录、收藏列表、个人资料等。本文从HTTP请求接力赛的视角,拆解模拟登录的完整流程,并分享会话保持、Cookie持久化及常见踩坑排查方法,帮

weixin_34277853的博客 331

requests库session保持持久会话

requests中cookie的原理 http://blog.youkuaiyun.com/zhu_free/article/details/50563756 requests - cookies的实现例子 http://www.cnblogs.com/nizhihong/p/6699492.html 在请求中带入cookies信息: #获取登录后的cookies内容 impor...

weixin_30556161的博客 335

python采集需要登陆才能看到信息的网站。requests Session 保持会话

想要采集目标网站的信息,发现有些信息是要登陆后才能采集的。下面用python pycharm django来尝试采集。 # 登陆后采集信息 def Get_Session(URL,DATA,HEADERS): '''保存登录参数''' ROOM_SESSION = requests.Session() ROOM_SESSION.post(URL,data=DATA,h...

1007
上一篇: requests使用cookie模拟登陆豆瓣
下一篇: 【python实用特性】- zip函数
RunnerJxc
博客等级 码龄11年 113粉丝 72原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值