c# - 如何抓取 JavaScript WebBrowser 更新的内容

标签 c# webbrowser-control

private void button1_Click(object sender, EventArgs e)
{
    webBrowser1.Navigate(textBox1.Text);
}

private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
    WebBrowser web = (WebBrowser)sender;
    richTextBox1.Text = web.DocumentText;
}

上面是示例代码。 它提供当前打开的所有文本,如果内容由 JavaScript 更新,它可见但 Document.Text 不更新。

请大家帮忙

最佳答案

我遇到了同样的问题。使用以下示例代码:

IHTMLDocument2 doc = webBrowser1.Document.DomDocument as IHTMLDocument2;
string content = doc.body.innerText;

此外,将 mshtml 添加到项目的引用中(如果您不知道如何添加引用,只需谷歌一下)。

实际上,无论何时使用这段代码,doc 变量中的值都是浏览器内容的更新版本。

祝你好运

关于c# - 如何抓取 JavaScript WebBrowser 更新的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7349667/

相关文章:

c# - Parallel.ForEach 显然是克隆引用类型?

c# - Web API 路由以捕获丢失的 Controller

c# - 有什么方法可以使用 google-image 搜索 API 吗?

webbrowser-control - 使用嵌入式 WebBrowser 控件时如何绕过 Internet Explorer 增强安全性?

vb6 - SendKeys "^f"无法与其他快捷键一起使用

delphi - 使用 TEmbeddedWB 或 TWebBrowser 检测外部内容

c# - 当更改文档属性时,WPF WebBrowser 控件不进入设计模式

c# - 将新的 Microsoft Edge 添加到 Web 浏览器控件?

c# - 使用大文档时运行正则表达式非常慢

c# - 为什么要在创建属性时使用 AttributeUsage AllowMultiple?