python爬虫里的cookie处理(Session类)

import requests

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKi\
    t/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36'
}
url = 'http://www.renren.com/PLogin.do'

# res = requests.get(url, headers=headers)
# print(res.cookies)
# print(res.cookies.get_dict())

data = {
    'email': '人人网用户名',
    'password': '人人网用户的密码'
}
session = requests.Session()
session.post(url, data=data, headers=headers)         #可以尝试在不传入data参数的时候直接访问个人主页,将url直接改成人人网个人主页即可
resp = session.get('人人网个人主页')   #类似:http://www.renren.com/969180896/profile
with open('test.html', 'w', encoding='utf-8') as test:
    test.write(resp.text)       #将这个个人主页下载到本地打开可以查看

选人人网是因为人人网的登录简单直接在网页上登录且登录一般没有验证码,个人主页需要在登录账户的情况下才能查看所以算是一个比较好的练习。当然其他还有好多保存cookie的方法。有些网页的编码问题还是很恼火的,下次有时间发一篇字符编码的

这边的原理是这样(暂且算是原理吧):session类是一个会话窗口(学过一点前端运维知识一般都知道,就像你的浏览器去登录一个网站服务器和你就有一个session),session.post方法就像你登录网站一样,后面的参数就是你要登录的网站网址,data里存储的就是你的用户名和密码(有的网站用户名和密码不是这个data的键),post之后这个session就记住你已经登录了,然后再使用session.get方法你在去查看人人网个人主页的时候就认为你是登录状态下的了。当然这个session也是会过期的。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值