我的MainWindow.xaml中有一个ChromiumWebBrowser控件:
<cefSharp:ChromiumWebBrowser x:Name="chromiumBrowser" Address="https://www.github.com/"/>
我试图通过在它上附加一个硒ChromeDriver来驱动它:
ChromeOptions options = new ChromeOptions();
options.BinaryLocation = AppDomain.CurrentDomain.FriendlyName;
options.AddArguments("disable-extensions");
options.AddArguments("disable-plugins");
ChromeDriver chromeDriver = new ChromeDriver(options);
chromeDriver.Url = "http://www.reddit.com";
这是正确的做法吗?当驱动程序试图连接到嵌入式控件时,它似乎几乎可以工作,但随后我从ChromeDriver控制台得到以下错误:
显然,使用Options.BinaryLocation附加驱动程序将不幸地启动可执行文件的新实例。从下面的评论中,我发现正确的方法是通过调试端口附加驱动程序。所以我通过代码创建我的浏览器控件:
CefSettings settings = new CefSettings();
settings.RemoteDebuggingPort = 9222;
settings.UserDataPath = "C:/Temp";
Cef.Initialize(settings);
browserControl = new ChromiumWebBrowser("chrome://version");
但当我试图依附它时:
ChromeOptions options = new ChromeOptions();
options.AddArguments("--remote-debugging-port=9222");
ChromeDriver driver = new ChromeDriver(options);
driver.Url = "http://www.reddit.com";
现在错误为:System.InvalidOperationException:“未从Disconnected创建会话:无法连接到呈现器(会话信息:Chrome=85.0.4183.121)(SessionNotCreated)”
这可能是由于chrome版本不匹配,因为CefSharp目前只支持v84。我使用的是v84 chromedriver,所以我不知道这个85警告是从哪里来的。
在经历了大量的脱发后,我发现这是有效的:
CefSettings settings = new CefSettings();
settings.RemoteDebuggingPort = 9222;
settings.UserDataPath = "C:/Temp";
Cef.Initialize(settings);
browserControl = new ChromiumWebBrowser("chrome://version");
这就是如何光荣地附加到嵌入式ChromiumWebBrowser:
ChromeOptions options = new ChromeOptions();
options.DebuggerAddress = "localhost:9222";
ChromeDriverService service = ChromeDriverService.CreateDefaultService();
service.HideCommandPromptWindow = true;
ChromeDriver driver = new ChromeDriver(service, options);
诀窍是使用chromeOptions.debuggerAddress,而不是chromeOptions.addarguments(“--remote-debugging-port=xxxx”)
问题内容: 如何在基于Java的桌面应用程序中嵌入浏览器?我是否可以直接与嵌入式浏览器通信(而不是通过本地主机)……例如加载html文本,捕获onclick事件,获取表单值? 谢谢 问题答案: 查看Eclipse,它具有一个嵌入式浏览器,用户可以对其进行配置(它们支持多种浏览器)。 即使您通过AWT_SWT桥使用基于AWT的应用程序,也可能会嵌入他们的浏览器。 此文章可以帮助您开始。
问题内容: 我想知道是否可以将Firefox浏览器作为组件嵌入基于Java Swing的应用程序中。 我已经从Internet上进行了一些研究,但是找不到答案。有人建议使用Java提供的其他浏览器组件。我认为这不是可取的,因为渲染引擎将与Firefox不同。 任何想法?非常感谢。 问题答案: 绝对可以,请先查看Mozilla Embedding for Java 这是一些示例代码
打开 Polar 应用程式 按下 M600 的正面按钮(注意,您必须先退出其他应用程式)。 或 按下侧边电源按钮打开应用程式菜单,找到并轻触Polar。 或 使用语音: 请确保您的 M600 显示屏处于启动状态且您当前处于主屏幕上。 说 "Ok Google"。 说“打开 Polar” 或“开始训练”。 请见以下说明,了解如何打开 "Ok Google" 语音识别功能,以利用语音浏览 Polar
我已经成功地创建了我的第一个Flask应用程序,并将我的代码分为一系列蓝图,因为我的代码库将随着时间的推移而大幅增长。我现在试图嵌入一个绘图仪表板(或者只是一个绘图视觉显示)到我的应用程序中。 现在,我正在使用一个从网络上获取的玩具示例来详细学习。第二个代码块启动dash,但我的目标是将第二个代码集成到我的主flask应用程序中。暂时来说,我希望它成为主应用程序中的一条路线(稍后我将把它解析为蓝图
我正在尝试创建一个Spring Boot应用程序,除了当我访问localhost:8080时必须插入用户名和密码外,所有的东西都运行得很好。我不知道如何从我的应用程序向嵌入式tomcat添加一个新的tomcat用户。 这是我的pom XML: 下面是tomcat可见的项目结构:
问题内容: 在行动方法(JSF)中,我有如下内容: 如何将byte []作为pdf发送到浏览器? 问题答案: 在action方法中,您可以通过JSF幕后获得HTTP servlet响应。然后,您至少需要将HTTP 标头设置为,并将HTTP 标头设置为(当您要弹出 另存为 对话框时)或将HTTP 标头设置为(当您想让Web浏览器处理显示本身时)。最后,您需要确保稍后再打电话以避免s飞来飞去。 开球示