解決Selenium重復開啟瀏覽器問題


在實際調試selenium自動化程序時,總是需要重新開啟瀏覽器。以下方法解決不斷重啟瀏覽器問題。
我們需要手動打開瀏覽器,進入到所需的頁面,執行一些手動任務,如輸入表單、輸入驗證碼,登陸成功后,然后再開始運行自動化腳本。

這種情況下如何使用selenium來接管先前已打開的瀏覽器呢?

這里給出Google Chrome瀏覽器的解決方案。

我們可以利用Chrome DevTools協議。它允許客戶檢查和調試Chrome瀏覽器。

打開cmd,在命令行中輸入命令:
chrome.exe --remote-debugging-port=9222 --user-data-dir="C:\selenum\AutomationProfile"

可以將其配置在環境變量中
對於-remote-debugging-port值,可以指定任何打開的端口。
對於-user-data-dir標記,指定創建新Chrome配置文件的目錄。它是為了確保在單獨的配置文件中啟動chrome,不會污染你的默認配置文件。
此時會打開一個瀏覽器頁面,我們輸入百度網址,我們把它當成一個已存在的瀏覽器:

現在,我們需要接管上面的瀏覽器。新建一個python文件,運行以下代碼:

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

chrome_options=Options()
chrome_options.add_experimental_option("debuggerAddress", "127.0.0.1:9222")
chrome_driver=r'C:\Users\xiaofeng\AppData\Local\Google\Chrome\Application\chromedriver.exe'
driver=webdriver.Chrome(chrome_driver,chrome_options=chrome_options)
print(driver.title)

driver.get('http://10.200.9.183:8074/login.koala')


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM