使用python+selenium控制手工已打开的浏览器

咱们能够利用Chrome DevTools协议。它容许客户检查和调试Chrome浏览器。html

打开cmd,在命令行中输入命令:python

chrome.exe --remote-debugging-port=9222 --user-data-dir="C:\selenum\AutomationProfile"

      对于-remote-debugging-port值,能够指定任何打开的端口。web

      对于-user-data-dir标记,指定建立新Chrome配置文件的目录。它是为了确保在单独的配置文件中启动chrome,不会污染你的默认配置文件。chrome

      还有,不要忘了在环境变量中PATH里将chrome的路径添加进去。浏览器

此时会打开一个浏览器页面,咱们输入百度网址,咱们把它当成一个已存在的浏览器:spa

如今,咱们须要接管上面的浏览器。新建一个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 = "C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe"
driver = webdriver.Chrome(chrome_driver, chrome_options=chrome_options)
print(driver.title)
复制代码

会发现打印出了 “百度一下,你就知道” 的网页标题。这样咱们就实现了对一个已打开的浏览器的控制。翻译

更多需求能够本身在此基础上进行修改。debug

ps:调试

driver.maximize_window()这个方法貌似不能用,报错:operation is unsupported with remote debugging:远程调试不支持操做

转自http://www.cnblogs.com/lovealways/p/9813059.html

转自http://www.teachmeselenium.com/2018/08/11/how-to-connect-selenium-to-an-existing-browser-that-was-opened-manually/

翻译http://www.cnblogs.com/lovealways

相关文章
相关标签/搜索