環境: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