如何通过selenium解决淘宝的滑块问题:
下面代码已修改了navigator.webdriver的值和给滑块加速度但好像还是验证不过去,有没有一个能够解决这个的方案,最好是用selenium
distance = 258
# 移动轨迹
track=[]
# 当前位移
current=0
mid=distance*4/5
t=0.2 # 计算间隔
v=1
while current<distance:
if current<mid:
a=4
else:
a=-3
v0=v
v=v0+a*t
move=v0*t+1/2*a*t*t
current+=move
track.append(round(move))
print(track)
first = driver.find_element(By.XPATH,"//*[@id='nc_1_n1z']")
action = ActionChains(driver)
action.click_and_hold(first).perform() # 按住
for x in track:
action.move_by_offset(xoffset=x, yoffset=0).perform()
action.release().perform()
刷新页面,再滑动就行了
轨迹过了,tql
参考下这个帖子里的办法:
https://blog.csdn.net/z__Java__/article/details/110749144
可以使用js关闭检测机制
driver.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
"source": """
Object.defineProperty(navigator, 'webdriver', {
get: () => undefined
})
"""
})