admin 管理员组文章数量: 887021
在实际调试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')
另外注意要先下载一个跟自己浏览器版本对应的chromedriver.exe
版权声明:本文标题:【Python】Selenium一直使用同一个浏览器,不重复开浏览器 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1727323856h1101794.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论