requests - 会话保持

使用场景:登录之后,只要保持会话,就可以持续访问接口。

  1. 需要注意会话保持,登录之后不要断线;
  2. 为了防止 CSRF 攻击,登录参数除了账号密码,有时候还会有个 token,这个要通过爬虫抓取;
import requests

# 目标网站的登录URL
login_url = 'http://example.com/login'

# 创建一个Session对象,以便保持会话状态
session = requests.Session()

# 获取登录页面,通常这一步用于获取CSRF tokens等
response = session.get(login_url)

# 解析登录表单需要的数据,例如CSRF tokens
# 这部分需要根据实际登录页面的HTML结构来解析
# 假设CSRF token 在一个input标签的value属性中
# 以下只是一个示例,具体情况需要根据实际页面结构解析
csrf_token = '从登录页面获取的CSRF token'

# 登录需要的数据
login_data = {
    'username': 'your_username',
    'password': 'your_password',
    'csrfmiddlewaretoken': csrf_token  # 如果需要的话
}

# 发送POST请求进行登录
response = session.post(login_url, data=login_data)

# 登录成功后,session对象会自动处理cookies,之后的请求都会保持登录状态
# 例如获取登录后的内容
homepage = session.get('http://example.com/home')

print(response.json())

print(homepage.text)  # 打印登录后的页面内容

posted on   疯狂的妞妞  阅读(35)  评论(0编辑  收藏  举报

(评论功能已被禁用)
相关博文:
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示