绕过UI的cooke和token的验证

很多的网站都在登录页面加入了识别文字,识别图片,拖动拼图的验证码方式来防止爬虫、恶意注册等,如果是做自动化,需要绕过

验证码才能进入下一步操作。

方案一、测试环境去除验证码 :最轻松的方法,找开发帮忙解决。

方案二、万能验证码 (推荐): lemon, 这个也简单 和常用。推荐使用

方案三、之前接口部分讲第三方库的使用方法,收费

方案四、通过添加cookie绕过登录 绕过图片验证【UI自动化】

cookie是一门客户端技术,一般是由服务器生成返回给浏览器客户端来保存的,并且cookie是以键值对的形式保存在浏览器客户端

的,每一个cookie都会有名称,值,过期时间...用来保存少量的用户信息

Cookie有很多使用场景,在项目中比较常见的有:

  1. 登录记住用户名
  2. 记录用户浏览记录
    Cookie种类:
    1、会话cookie:保存在内存中,浏览器关闭就清除== 这种不适用。
    2、持久cookie:保存在硬盘中,失效时间到之后就会清除 ,适用于cookies的处理方式登录。
    添加cookie解决验证码思路:
    在登录某个网站,如果勾选【自动登录】,当下次再访问该网站时就自动处于登录状态。这个功能其实就是将用户信息保
    存在浏览器的cookie中,当再次访问网站时,浏览器直接使用本地保存的cookie用户信息进行登录。
    所以我们在代码中也可以将用户信息添加到cookie中,再刷新浏览器即可;
python 复制代码
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

相关推荐
知识分享小能手4 小时前
uni-app 入门学习教程,从入门到精通,uni-app基础扩展 —— 详细知识点与案例(3)
vue.js·学习·ui·微信小程序·小程序·uni-app·编程
Larry_Yanan8 小时前
QML学习笔记(四十二)QML的MessageDialog
c++·笔记·qt·学习·ui
Javashop_jjj9 小时前
三勾软件| 用SpringBoot+Element-UI+UniApp+Redis+MySQL打造的点餐连锁系统
spring boot·ui·uni-app
程序员杰哥16 小时前
UI自动化测试实战:从入门到精通
自动化测试·软件测试·python·selenium·测试工具·ui·职场和发展
Larry_Yanan1 天前
QML学习笔记(四十)QML的ApplicationWindow和StackView
c++·笔记·qt·学习·ui
大美B端工场-B端系统美颜师2 天前
告别“搬砖”:在AI的辅助下,前端如何触及业务与架构的深水区?
ui·界面设计
ZH_1 02152 天前
Qt-ui界面
ui
Stringzhua3 天前
ElementUi【饿了么ui】
前端·ui·elementui
啊森要自信3 天前
【GUI自动化测试】Python 自动化测试框架 pytest 全面指南:基础语法、核心特性(参数化 / Fixture)及项目实操
开发语言·python·ui·单元测试·pytest
程序员正茂3 天前
Unity3d中Tab控件的实现
ui·unity·tab·控件