在运行 WebDriver 自动化脚本时,我遇到了一种情况,它试图打开一个页面,该页面包含一个带有实时摄像头的片段(使用 Java 小程序制作)。一旦脚本到达此页面 - 安全警告警报(允许和不允许)显示并阻止执行过程。这是以前任何人都遇到过的事情吗?实际上,我正在寻找一个选项来阻止此安全警告以显示在页面上。
一个弹出窗口来了,我想点击“允许”。如何将焦点移动到新的弹出窗口并单击允许。
任何人都可以帮我解决上述问题吗?
在运行 WebDriver 自动化脚本时,我遇到了一种情况,它试图打开一个页面,该页面包含一个带有实时摄像头的片段(使用 Java 小程序制作)。一旦脚本到达此页面 - 安全警告警报(允许和不允许)显示并阻止执行过程。这是以前任何人都遇到过的事情吗?实际上,我正在寻找一个选项来阻止此安全警告以显示在页面上。
一个弹出窗口来了,我想点击“允许”。如何将焦点移动到新的弹出窗口并单击允许。
任何人都可以帮我解决上述问题吗?
我在接受 Java 小程序“允许”时遇到问题
我的解决方案是创建一个具有始终激活插件的设置的 Firefox 配置文件:
FirefoxProfile fp = new FirefoxProfile();
fp.setAcceptUntrustedCertificates( true );
fp.setPreference( "security.enable_java", true );
fp.setPreference( "plugin.state.java", 2 );
WebDriver d = new FirefoxDriver( fp );
其中plugin.state.java:
plugin.state.java = 0 --> never activate
plugin.state.java = 1 --> ask to activate
plugin.state.java = 2 --> always activate
这可能会让你更接近...
Selenium 使用不同的 firefox 配置文件,因为 Java 对我来说是不活动的,而且我没有在 Firefox 浏览器 Selenium 中启动我的 firebug 插件。我必须打开另一个 Firefox 才能使用 Firebug。
我通过在开始菜单中搜索 %appdata% 然后单击 Roaming/Mozilla/Firefox/Profile/ 找到了我的默认 Firefox 配置文件,然后它给出了我的默认配置文件名称。
您还可以打开 Firefox 帮助菜单(?标志)并单击疑难解答信息...单击显示配置文件文件夹
然后我将 selenium 配置为使用我的默认配置文件,以便启用 Java 并且在 Selenium 启动的浏览器中可以使用 Firebug:
确保在 selenium 中使用“/”,即使它可能在 Windows 路径位置使用“\”
fp = webdriver.FirefoxProfile('C:/Users/xxx/AppData/Roaming/Mozilla/Firefox/Profiles/41s7nq9o.default')
driver = webdriver.Firefox(fp)
driver.get('www.stackoverflow.com')
其中 41s7nq9o.default 是您的默认配置文件的名称