京东的滑动验证码无法通过

来源:10-6 滑动验证码识别 和selenium模拟登录B站 - 1

慕后端6142971

2024-01-16

![图片描述图片描述
拖动滑块用的是课程里的代码,滑块位置是拖准了,但是京东判定验证失败。手动拖就能过。请问bobby老师,怎么解决?

写回答

1回答

bobby

2024-01-22

这是滑动过程的滑动代码被识别到了:

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
import time
import random

# 初始化 webdriver (以 Chrome 为例)
driver = webdriver.Chrome()
driver.get("你的目标网站URL")

# 定位到滑块元素
slider = driver.find_element_by_id("slider-id")  # 替换为实际的滑块元素 ID

# 计算的滑动距离
distance = 200  # 以像素为单位的滑动距离

# 模拟人的滑动过程
ActionChains(driver).click_and_hold(slider).perform()
for i in range(distance):
    # 模拟人类滑动的速度变化和小幅度震荡
    ActionChains(driver).move_by_offset(xoffset=1, yoffset=random.randint(-1, 1)).perform()
    time.sleep(random.uniform(0.005, 0.01))  # 短暂暂停以模拟真实滑动

# 稍作停顿并释放滑块
time.sleep(0.5)
ActionChains(driver).release().perform()

使用上面的代码替换课程中的滑动代码试试

0
0

Python爬虫工程师实战 大数据时代必备

慕课网严选精品教程,高质量内容+服务!

2375 学习 · 1158 问题

查看课程