使用Selenium控制當(dāng)前已經(jīng)打開的chrome瀏覽器窗口
前言
有過幾個小伙伴問過我如何利用 Selenium 獲取已經(jīng)打開的瀏覽器窗口,正巧近日看到有文章寫到,我就很不要臉的拿來過拼湊到一起了。
這里使用 chrome瀏覽器 來做示例。
整個下來主要有兩個步驟,
- 手動打開瀏覽器,
- 使用 Python程序 去獲取到手動打開的 chrome瀏覽器。
應(yīng)用場景(理論上)
- 登錄賬號并且需要輸入手機(jī)驗(yàn)證碼的網(wǎng)站;
- 登錄賬號并且需要人機(jī)驗(yàn)證的網(wǎng)站(如圖片點(diǎn)選、文字點(diǎn)選等人機(jī)驗(yàn)證;
- …
1. 打開瀏覽器
首先來到安裝 chrome瀏覽器 的文件夾下,例:C:\Program Files (x86)\Google\Chrome\Application。

在此界面打開 cmd窗口,
然后輸入:chrome.exe --remote-debugging-port=9527 --user-data-dir=“F:\selenium\AutomationProfile” ,并回車。
這句代碼的意思是啟動 chrome瀏覽器 的調(diào)試模式,
- user-data-dirr=“F:\selenium\AutomationProfile” 是在單獨(dú)的配置文件中啟動 chrome瀏覽器,可以理解為 新的瀏覽器,記得創(chuàng)建對應(yīng)文件夾哦;
- 其中 9527 為端口號,可自行指定。

此時(shí)候,如果無誤的話就可以看到桌面新打開了一個 chrome 瀏覽器了。
見以下示例動圖,

那接下來就是去控制這個 手動打開的 chrome瀏覽器 啦。
2. 編寫 Python程序獲取控制 瀏覽器
Demo代碼 如下:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_experimental_option("debuggerAddress", "127.0.0.1:9527")
browser = webdriver.Chrome(options=options)
print(browser.title)
代碼運(yùn)行后,可以看到如下:即獲取 當(dāng)前頁面的 title 。

修改了一下代碼,如下所示:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_experimental_option("debuggerAddress", "127.0.0.1:9527")
browser = webdriver.Chrome(options=options)
url = 'https://www.bilibili.com'
browser.get(url)
print(browser.title) # 嗶哩嗶哩 (゜-゜)つロ 干杯~-bilibili運(yùn)行之后可以看到,瀏覽器窗口請求了新的 URL(https://www.bilibili.com),并且獲取到了當(dāng)前頁面的 title。

3. 總結(jié)
去到 chrome瀏覽器 安裝的文件夾下,打開 cmd窗口,輸入以下內(nèi)容:
chrome.exe --remote-debugging-port=9527 --user-data-dir="F:\selenium\AutomationProfile"
然后執(zhí)行 2. 的 Python代碼即可控制當(dāng)前瀏覽器窗口。
后話
自己動手操作一番,豈不美哉?
到此這篇關(guān)于使用Selenium控制當(dāng)前已經(jīng)打開的chrome瀏覽器窗口的文章就介紹到這了,更多相關(guān)Selenium控制已打開瀏覽器窗口內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Django admin實(shí)現(xiàn)圖書管理系統(tǒng)菜鳥級教程完整實(shí)例
這篇文章主要介紹了Django admin實(shí)現(xiàn)圖書管理系統(tǒng)菜鳥級教程完整實(shí)例,具有一定借鑒價(jià)值,需要的朋友可以參考下。2017-12-12
Django通過自定義認(rèn)證后端實(shí)現(xiàn)多種登錄方式驗(yàn)證
Django提供了用戶認(rèn)證系統(tǒng),那么如何在項(xiàng)目中進(jìn)行應(yīng)用呢?在本文中小編將給大家介紹如何使用用戶認(rèn)證系統(tǒng),實(shí)現(xiàn)我們業(yè)務(wù)場景中常見的多種登錄方式驗(yàn)證。感興趣的小伙伴可以了解一下2021-12-12
使用Python實(shí)現(xiàn) 學(xué)生學(xué)籍管理系統(tǒng)
這篇文章主要介紹了使用Python實(shí)現(xiàn) 學(xué)生學(xué)籍管理系統(tǒng),代碼大致分為五個函數(shù)組成,具體內(nèi)容詳情本文給大家介紹的非常詳細(xì),需要的朋友可以參考下2019-11-11

