一起学python爬虫第六天

本文探讨了Python爬虫中cookie和session的概念,通过案例展示了它们的区别。在cookie部分,讲解了如何将浏览器cookie信息封装到请求头中,并在响应中处理数据。在session部分,解释了session在requests库中的作用,它用于跨请求保存参数,简化了处理cookie的过程,特别是登录场景下,仅需账户和密码即可。通过对比,读者能更好地理解两者在爬虫实践中的应用。

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

上一篇文章我们了解到了cookie和session,今天我们通过两个案例,对比一下!!!
在这里插入图片描述

一、cookie

将浏览器中的cookie信息封装到请求头中
在这里插入图片描述

#需求:将个人首页保存到本地
import requests

# 请求头
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36",
    'Cookie': '_ref=5fb72de8a61f9; BAIDU_SSP_lcr=https://www.baidu.com/link?url=EaN4e7LkN3eLd_cJW7DfItZgfQG4xT3YNFwZ4JkR5pFsHQ3TON8jrZtSMjGcy5Qj&wd=&eqid=d4d43e3f00005268000000035fb72de6; _vid=C924C3E490500001EFF01DF918E0B960; _user=bb3f765920df40ca11e14b2a1ae416b4_181771223_1605840378; _preemail=18524158889%40163.com; _uid=181771223; _email=18524158889; _laid=0; _sso=181771223; SERVERID=_srv80-67_; Hm_lvt_500f908d39095efce74d0e9c64f55ffb=1605840384; Hm_lpvt_500f908d39095efce74d0e9c64f55ffb=1605840384; onlinenum=c%3A0; noFocusContent=1; wpresence=PjO5bXeF1OugZsNkrNBQa0uXLM8YNg43X7ct_g.ZGZ0MTgxNzcxMjIz'
}
response = requests.get(url='http://www.kaixin001.com/home/index.php', headers=headers)

# 保存文件
with open("开心网—cookie.html", "w", encoding='utf-8') as f:
    f.write(response.text)

输出结果就是把数据保存到HTML中:在这里插入图片描述

二、session

在requests里,session对象是一个非常常用的对象,这个对象代表一次用户会话;客户端浏览器链接服务器开始,到客户端浏览器与服务器断开。
会话能让我们在跨请求时保存某些参数,比如在同一个session实例发出的所有请求之间保持cookie。
每次通过查找cookie很麻烦,需要复制粘贴,所有使用session来完成登录,只需要账户和密码就可以了。

import requests
#创建seesion对象
ss = requests.session()
#使用session对象发起请求
#确定请求的url:是form表单中action属性的值
#确定请求的方式:是form表单中method属性的值
#定义参数
# 这里需要创建账号和密码
data = {
     'loginemail': '账号',
     'password': '密码'
}
response = ss.post(url='https://security.kaixin001.com/login/login_post.php', data=data)
# 保存文件
with open('开心网-session.html', 'w', encoding='utf-8') as f:
    f.write(response.text)

通过这两个代码我们可以很清楚的看到cookie和seesion的区别吧。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值