从另一个应用程序中的 Web 浏览器控件获取文档数据
Get the documentdata from a webbrowser control in another application
我正在寻找一种从另一个应用程序网络浏览器控件(并可能更改它)获取文档信息(或文档文本)的方法。
另一个应用是用.net写的,不是我写的
我正在寻找这样的能力:
- 我想要 OnDocumentCompleted 的事件处理程序,它可以让我获取该文档的信息。
- 如果可以的话,我也想截取某些页面,添加一些html,然后传回第二个app显示
网上搜索让我转向使用 'Hooks',但在这种情况下使用挂钩的情况并不多。
希望你能帮帮我
安东尼
此代码提供了一个 html 解析 returns 纯文本 (
解析取决于页面内容)。
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();
}
}
我正在寻找一种从另一个应用程序网络浏览器控件(并可能更改它)获取文档信息(或文档文本)的方法。 另一个应用是用.net写的,不是我写的
我正在寻找这样的能力:
- 我想要 OnDocumentCompleted 的事件处理程序,它可以让我获取该文档的信息。
- 如果可以的话,我也想截取某些页面,添加一些html,然后传回第二个app显示
网上搜索让我转向使用 'Hooks',但在这种情况下使用挂钩的情况并不多。
希望你能帮帮我
安东尼
此代码提供了一个 html 解析 returns 纯文本 ( 解析取决于页面内容)。
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();
}
}