从另一个应用程序中的web浏览器控件获取documentdata

本文关键字:浏览器 控件 获取 documentdata web 另一个 应用程序 | 更新日期: 2023-09-27 18:10:19

我正在寻找从另一个应用程序web浏览器控制(并可能改变它)获得文档信息(或文档文本)的方法。另一个应用程序是用。net编写的,但不是由我编写的。

我在寻找这样的能力:

  • 我想要一个事件处理程序的OnDocumentCompleted,可以让我的文件的信息。
  • 如果可能的话,我还想拦截某些页面,添加一些html,并将它们发送回第二个应用程序显示。

搜索网页指向我使用'Hooks',但在这种情况下使用Hooks的情况并不多。

希望你能帮助我。
安东尼

从另一个应用程序中的web浏览器控件获取documentdata

这段代码提供了一个html解析示例,它返回纯文本(解析取决于页面内容)。

private string GetPlainText(WebBrowser webBrowser)
{
    StringBuilder sb = new StringBuilder();
     // Pick out a heading.
    foreach (HtmlElement h1 in webBrowser.Document.GetElementsByTagName("H1"))
        sb.Append(h1.InnerText + ". ");
    // Select only some text, ignoring everything else.
    foreach (HtmlElement div in webBrowser.Document.GetElementsByTagName("DIV"))
        if (div.GetAttribute("classname") == "story-body")
            foreach (HtmlElement p in div.GetElementsByTagName("P"))
            {
              string classname = p.GetAttribute("classname");
              if (classname == "introduction" || classname == "") sb.Append(p.InnerText + " ");
            }
    return sb.ToString();
  }
}