Python requests之Cookie

本文详细介绍了如何使用Python的requests库处理登录会话,通过POST请求获取Cookie,然后利用Cookie获取登录后受限资源的示例,涉及requests、Cookie管理和登录后抓取。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

视频版教程:一天掌握python爬虫【基础篇】 涵盖 requests、beautifulsoup、selenium

在某些需要登录的网站或者或者应用,假如我们需要抓取登录后的内容,技术上本质通过session会话实现。服务器端存会话信息,浏览器通过Cookie携带客户端访问用户信息,来实现会话机制。

requests对Cookie有很好的支持。

我们看一个实例。

http://download.java1234.com/

这个网站,假如需要看抓取登录后的用户下载的资源信息

http://download.java1234.com/user/userDownload/list/1

这时候的思路是先post方式登录系统,获取返回的cookie,然后我们带上cookie再请求用户下载资源信息url。

参考代码:

import requests

url = "http://download.java1234.com/user/login"

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.0.0 Safari/537.36'
}

data = {
    'userName': 'python222',
    'password': '123456'
}

r = requests.post(url=url, data=data, headers=headers)

print(r.text)
print(r.headers)
cookieJar = r.cookies
for c in cookieJar:
    print(c.name, c.value)

targetUrl = "http://download.java1234.com/user/userDownload/list/1"

r2 = requests.get(url=targetUrl, headers=headers, cookies=cookieJar)
print(r2.text)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值