0

嗨,我喜欢做的是:

  1. 在 WPF xaml 中创建一个像这样的网格:<_Grid Name="gridWeb">
  2. 在此网格中打开 GeckoFX45 Firefox 浏览器(将创建的 Geckofx 窗口作为子窗口添加到网格中)
  3. 使用 Selenium 在我的网格中自动化这个精确的浏览器。

我对这个问题做了很多研究,我发现了一些文章,比如https://nhabuiduc.wordpress.com/2014/09/18/geckofx-net-webbrowser-setup-and-features/关于如何解决我的问题. 在那篇文章中,我成功地解决了第 1 点和第 2 点,但使用的是旧版本的 Geckofx。

我已经尝试了很多东西,但没有一个包含我的工具的所有要求。

有谁知道这是否可能?如果是,有人知道如何将所有这 3 个要求与 Geckofx 45 的实际版本结合起来吗?

4

1 回答 1

0

您想将此浏览器添加到 Selenium IWebDriver 有什么特别的原因吗?(例如为 IWebDriver 编写的大量现有代码?)

如果没有,而您只是想拥有一个自动化浏览器,那么您可以使用 GeckoFx API 实现更多自动化。

例如:

GeckoWebBrowser Browser => GetBrowserInstanceSomehow();

...
//get element reference 
GeckoInputElement textBox = 
this.Browser.Document.GetElementsByClassName("inputBox").FirstOrDefault() as GeckoInputElement; 

//set value
textBox.Value = "Something";

GeckoHtmlElement btn = this.Browser.Document.GetElementById("submitButton") as GeckoHtmlElement;

//interact
btn.Click();

你几乎可以用它做所有事情——执行脚本、发送 POST 请求、覆盖 CSS、评估/更改/删除节点、导航、处理导航事件等。

于 2018-02-14T11:55:25.257 回答