selenium定制启动谷歌浏览器,绕过验证码

环境:ubuntu,selenium,谷歌浏览器及对应的chromedriver

手动启动谷歌浏览器:以命令行的方式启动,指定端口

/opt/google/chrome/chrome --remote-debugging-port=9222

 检测启动是否成功:在自动开启的谷歌浏览器输入:http://127.0.0.1:9222/json

 修改chromedriver,修改cdc后面的字符串(两个下划线之间的字符串是:随机的22位字符,这个没有什么限制,自由发挥22位即可)

编写代码,模拟登录

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options =Options()
options.binary_location='/opt/google/chrome/chrome'  # 指定谷歌浏览器的启动命令
options.add_experimental_option('debuggerAddress','127.0.0.1:9222') # 浏览器的启动的地址,用于连接已经打开的浏览器
path = './chromedriver'
driver = webdriver.Chrome(executable_path=path,chrome_options=options)

driver.get('https://login.taobao.com/member/login.jhtml')
driver.execute_script("return document.documentElement.outerHTML")
driver.find_element_by_xpath('//*[@id="fm-login-id"]').send_keys('')
driver.find_element_by_xpath('//*[@id="fm-login-password"]').send_keys('')
driver.find_element_by_xpath('//*[@id="login-form"]/div[4]/button').click()
driver.get_cookies()

跟着步骤走是完全没问题的,这里只是做个记录,方便以后查看。

附:

ubuntu查看谷歌相关文件的命令: 

dpkg -L google-chrome-stable
原文地址:https://www.cnblogs.com/kindvampire/p/13186292.html