当前位置: 首页 > news >正文

Python爬虫 模拟登录状态 requests版

前言

网站必须是登录状态才能查看网站信息,是最常见的反爬手段,下面我分享一下request模拟登录状态进行请求

目录

模拟登录的原理

直接复制网站Cookie模拟登录状态

通过登录接口信息破解出Cookie模拟登录状态


模拟登录的原理

网站是使用Cookie和session记录网站的登录状态的

常见有三种情况

情况一

        直接把用户信息放到Cookie里面,明文暴露用户信息,不安全,一般很少网站使用

情况二

        网站通过session对用户信息进行键值对的方式进行存储,sesionID和用户信息,cookie存储的是sessionID,后台通过cookie存储的sessionID来对用户信息进行寻找

情况三

        分布式情况下,后台把用户信息存储到Redis里面了,原理和情况二一样

其他情况加入反爬加密,需要自己解密了

总结: 无论他是使用那种情况开发登录功能,一般登录状态的信息在请求头cookie或者Authorization里面

所以我们在request请求的时候拿到网站Cookie或者Authorization就可以保证网站的登录状态了,也就模拟了用户登录

直接复制网站Cookie模拟登录状态

这种适合自己临时使用,因为Cookie会变,这样获取肯定不能长时间使用

找到你需要请求的接口,找到Cookie的字符串

 

import requests#添加请求头用户代理,模拟真人行为
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36"
}cookies = '在网页上面获取的cookie字符串'#处理Cookie字符串可以放到request里面使用
cookies = {item.split('=')[0]: item.split('=')[1] for item in cookies.split("; ")}
cookies = requests.utils.cookiejar_from_dict(cookies)url = "请求网址"response = requests.get(url, headers=headers, cookies=cookies)#得到网页源代码
print(response.text)

通过登录接口信息破解出Cookie模拟登录状态

这种就是先使用这个网站的登录接口进行登录,看返回的信息里面一般是有生成Cookie信息的原材料

如果网站没有反爬机制,就直接把Cookie信息给你了,如果有反爬机制,他会把返回的Cookie信息进行加密处理什么的,那么就需要自己自行探索了

拿到Cookie信息,后面就和《直接复制网站Cookie模拟登录状态》步骤一样了

http://www.dtcms.com/a/266906.html

相关文章:

  • 如何查看自己电脑的CUDA版本?
  • D3 面试题100道之(21-40)
  • 通过MaaS平台免费使用大模型API
  • Java 入门
  • 鸿蒙中判断两个对象是否相等
  • react案例动态表单(受控组件)
  • React 渲染深度解密:从 JSX 到 DOM 的初次与重渲染全流程
  • 深入解析XFS文件系统:原理、工具与数据恢复实战
  • 【Go语言-Day 13】切片操作终极指南:append、copy与内存陷阱解析
  • 替代MT6701,3D 霍尔磁性角度传感器芯片
  • Go语言的协程池Ants
  • yolo性能评价指标(训练后生成文件解读)results、mAP、Precision、Recall、FPS、Confienc--笔记
  • 韩顺平之第九章综合练习-----------房屋出租管理系统
  • 从0写自己的操作系统(3)x86操作系统的中断和异常处理
  • 02每日简报20250704
  • Spring Boot + 本地部署大模型实现:安全性与可靠性保障
  • 高档宠物食品对宠物的健康益处有哪些?
  • MySQL/MariaDB数据库主从复制之基于二进制日志的方式
  • 如何查看自己电脑的显卡信息?
  • 力扣hot100题(1)
  • C++26 下一代C++标准
  • 通用人工智能三大方向系统梳理
  • 学习者的Python项目灵感
  • 【python实用小脚本-128】基于 Python 的 Hacker News 爬虫工具:自动化抓取新闻数据
  • [数据结构]详解红黑树
  • 小架构step系列04:springboot提供的依赖
  • mobaxterm终端sqlplus乱码问题解决
  • 使用循环抵消算法求解最小费用流问题
  • opencv的颜色通道问题 rgb bgr
  • 智绅科技:以科技为翼,构建养老安全守护网