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

绕过UI的cooke和token的验证

很多的网站都在登录页面加入了识别文字,识别图片,拖动拼图的验证码方式来防止爬虫、恶意注册等,如果是做自动化,需要绕过
验证码才能进入下一步操作。
方案一、测试环境去除验证码 :最轻松的方法,找开发帮忙解决。
方案二、万能验证码 (推荐): lemon, 这个也简单 和常用。推荐使用
方案三、之前接口部分讲第三方库的使用方法,收费
方案四、通过添加cookie绕过登录 绕过图片验证【UI自动化】
cookie是一门客户端技术,一般是由服务器生成返回给浏览器客户端来保存的,并且cookie是以键值对的形式保存在浏览器客户端
的,每一个cookie都会有名称,值,过期时间…用来保存少量的用户信息
Cookie有很多使用场景,在项目中比较常见的有:

  1. 登录记住用户名
  2. 记录用户浏览记录
    Cookie种类:
    1、会话cookie:保存在内存中,浏览器关闭就清除== 这种不适用。
    2、持久cookie:保存在硬盘中,失效时间到之后就会清除 ,适用于cookies的处理方式登录。
    添加cookie解决验证码思路:
    在登录某个网站,如果勾选【自动登录】,当下次再访问该网站时就自动处于登录状态。这个功能其实就是将用户信息保
    存在浏览器的cookie中,当再次访问网站时,浏览器直接使用本地保存的cookie用户信息进行登录。
    所以我们在代码中也可以将用户信息添加到cookie中,再刷新浏览器即可;
import pyautogui
import pyperclip
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.support.ui import Select
from selenium.webdriver.common.keys import Keys
from time import sleep
from selenium import webdriver
from selenium.webdriver.common.by import By# 百度案例
driver = webdriver.Chrome()
driver.maximize_window()
driver.get('http://mall.lemonban.com:3344/')#带上cookies信息
driver.add_cookie({"name":"token","value":"1276a799-80ae-4840-90ef-6eb659015d6c"})
driver.refresh()sleep(4)
driver.quit()

cookies失效的条件:–cookies绕过技术代码就需要更新cookies值 否则不能登录。
1、手动退出登录
2、cookie已经超过有效期
注意,如果cookies失效 就需要重新获取cookies。
如果你们的项目cookies键值对存在多个cookies,add_cookies 也可以加多个:
driver.add_cookies({}) --第一个cookies
driver.add_cookies({}) --第二个cookies

http://www.xdnf.cn/news/25273.html

相关文章:

  • 2025年最新版 Git和Github的绑定方法,以及通过Git提交文件至Github的具体流程(详细版)
  • keil5 µVision 升级为V5.40.0.0:增加了对STM32CubeMX作为全局生成器的支持,主要有哪些好处?
  • Elasticsearch只返回指定的字段(用_source)
  • 实现AWS Step Function安全地请求企业内部API返回数据
  • c# MES生产进度看板,报警看板 热流道行业可用实时看生产进度
  • 【问题笔记】解决python虚拟环境运行脚本无法激活问题
  • Flink框架十大应用场景
  • 基于SpringBoot的网上找律师管理系统
  • 四月下旬系列
  • (03)Vue的常用指令
  • 23种设计模式全解析及其在自动驾驶开发中的应用
  • jmeter中文乱码问题解决
  • 《Android 应用开发基础教程》——第二章:Activity 与生命周期详解
  • 汽车故障诊断工作原理:从需求到AUTOSAR诊断模块协作的浅析
  • 笔试专题(十一)
  • 开源Midjourney替代方案:企业级AI绘画+PPT生成系统+AI源码
  • 【MySQL】数据库约束
  • kimi+deepseek制作PPT
  • 手搓LeNet-5(基础模型)实现交通标志识别
  • React-在使用map循环数组渲染列表时须指定唯一且稳定值的key
  • 零、HarmonyOS应用开发者基础学习总览
  • Spring 学习笔记之 @Transactional详解
  • C++镌刻数据密码的树之铭文:二叉搜索树
  • X-AnyLabeling开源程序借助 Segment Anything 和其他出色模型的 AI 支持轻松进行数据标记。
  • Json 在线格式化 - 加菲工具
  • 《软件设计师》复习笔记(11.5)——测试原则、阶段、测试用例设计、调试
  • 回顾与动机 - 为什么我们需要 Transformer
  • 全国青少年信息素养大赛 C++算法创意实践挑战赛初赛 集训模拟试卷《七》及详细答案解析
  • 2048小游戏C++板来啦!
  • QT6 源(36):界面组件的总基类 QWidget 的源码阅读