【Python selenium过极验滑块】用自动化selenium 操作GEETEST极验滑块,简单粗暴

文章日期:2024.07.24

使用工具:Python

文章类型:自动化过极验滑块

文章全程已做去敏处理!!! 【需要做的可联系我】

AES解密处理(直接解密即可)(crypto-js.js 标准算法):​​​​​​在线AES加解密工具

**【点赞 收藏 关注 】**仅供学习,仅供学习。

注意:要用Google浏览器和Google驱动,可以在这里下载Google浏览器 和 浏览器驱动下载 教程分享
今天用Python 的 selenium模块,自动化过极验滑块验证,很好用哦

先看效果,觉得效果不好就滑走吧

看完了吗,代码拿走吧,注释写的很明白,不懂可以留言哦
python 复制代码
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.action_chains import ActionChains
import time
import re
import requests
# 安装库 pip install ddddocr
import ddddocr
# 运行脚本实列化一次即可,不要重复实列化,会浪费时间
det = ddddocr.DdddOcr(det=False, ocr=False)

# 配置 Chrome 浏览器
chrome_options = webdriver.ChromeOptions()
chrome_options.binary_location = "chrome/chrome.exe"  # 指定 Chrome 浏览器的路径
chrome_options.add_argument("--disable-infobars")   #  禁用浏览器中的"信息栏",避免干扰测试。
# 启动浏览器
driver = webdriver.Chrome(options=chrome_options)

# 打开 Google
driver.get("http://gt4.geetest.com/")

print('点击开始验证')
# 点击验证
driver.find_element(By.XPATH,r'/html/body/div/div/div[2]/div[2]/form/div[3]/div[3]/div[1]/div[1]').click()
print('等待加载')
time.sleep(4)
data = driver.page_source
# 背景图
beijnigtu = re.findall('class="geetest_bg_.*?url\("(.*?)"\);',data)
# 小拼图
xiaopintu = re.findall('class="geetest_slice_bg_.*?url\("(.*?)"\);',data)
print('成功获取背景图和小拼图的链接')
# 请求背景图
requests_beijnigtu = requests.get(beijnigtu[0]).content
# 小拼图
requests_xiaopintu = requests.get(xiaopintu[0]).content
print('背景图和小拼图已请求成功!!!')
# 开始识别滑块距离
res1 = det.slide_match(requests_beijnigtu, requests_xiaopintu, simple_target=True)['target'][0]
print(f'识别出距离:{res1}')
# 定位滑块的滑动按钮
element = driver.find_element(By.XPATH,r'/html/body/div/div/div[2]/div[2]/form/div[3]/div[3]/div[1]/div[4]/div[1]/div[2]/div/div/div[2]/div/div[3]')
print('滑动按钮已定位')
# 点击并抓住标签
ActionChains(driver).click_and_hold(element).perform()
print('开始滑动')
# 开始滑动
ActionChains(driver).move_by_offset(xoffset=res1-1, yoffset=0).perform()  # 向右滑动114像素(向左是负数)
# 松开按钮
ActionChains(driver).release().perform()
print('完成')
print('等待执行其他操作!!!')
time.sleep(1000)
# 关闭浏览器
driver.quit()
相关推荐
空空潍9 分钟前
Miniconda完整安装教程(win版)
python·miniconda
深兰科技23 分钟前
深兰科技与淡水河谷合作推进:矿区示范加速落地
java·人工智能·python·c#·scala·symfony·深兰科技
weixin_5860614630 分钟前
JavaScript中Redux-Thunk处理异步Action的任务流
jvm·数据库·python
爱码驱动33 分钟前
校园IT交流论坛-软件测试报告(功能/接口/自动化)
自动化·测试
2401_897190551 小时前
Golang怎么写TODO待办应用_Golang TODO应用教程【深入】
jvm·数据库·python
m0_678485451 小时前
CSS实现浮动图标与文本居中对齐_配合浮动与flex
jvm·数据库·python
YuanDaima20481 小时前
二分查找基础原理与题目说明
开发语言·数据结构·人工智能·笔记·python·算法
2401_887724501 小时前
uni-app动画效果实现 uni-app如何使用animation API
jvm·数据库·python
Luca_kill1 小时前
实战指南:用 Python + NLP 搭建一套轻量级 AI 舆情监控系统
人工智能·python·机器学习·nlp·舆情监控
七颗糖很甜1 小时前
python实现全国雷达拼图数据的SCIT风暴识别
python·算法·scipy