python+selenium绕过滑块验证,实现自动登录

实现taobao自动化登录,当用webdriver打开淘宝时,滑块验证一直失败,手动滑都会失败。因为淘宝会检测window.navigator.webdriver,控件检测到你是selenium进入,所以就会弹出滑块验证。只需要绕过检测就能实现自动登录

验证了两种方法可以跳过:

第一种是给浏览器加启动参数,开启远程调试--remote-debugging-port=9222

这种方法虽然可以跳过检测,但是必须要手动打开浏览器再执行脚本,不是我想要的结果

python+selenium绕过滑块验证,实现自动登录_第1张图片

于是找到了第二种方法

#去除浏览器识别,去除浏览器上方有“Chrome正受到自动测试软件的控制”
option = ChromeOptions()
option.add_experimental_option('excludeSwitches', ['enable-automation'])
option.add_experimental_option("detach", True)

跳转到登录页面后,再 解决特征识别.因为服务器识别到的selenium的特征。使用该两行代码更改了特征,即可以顺利通过识别
script = 'Object.defineProperty(navigator, "webdriver", {get: () => false,});'
driver.execute_script(script)

可以看到解除识别后window.navigator.webdriver的值变成了false<

你可能感兴趣的:(python)