【问题标题】:Windows Form WebBrowser control shows a web page but innerHTML doesn't contain text shown on web pageWindows 窗体 WebBrowser 控件显示网页,但 innerHTML 不包含网页上显示的文本
【发布时间】:2014-12-25 23:16:52
【问题描述】:

我正在使用 Visual Studio 2013 和 C# 5.0 开发包含 WebBrowser 控件的 Windows 窗体应用程序。 当我执行“webBrowser.Navigate(new Uri(loginUrl));”时我在 Windows 窗体中看到一个网页。 如果我将光标移到 WebBrowser 窗口上并执行“查看源代码”,我会看到 HTML,并且 ff 我将 HTML 复制并粘贴到记事本中,我可以找到我要查找的文本。

但如果我这样做:

  var document = webBrowser.Document;
  var documentAsIHtmlDocument3 = (mshtml.IHTMLDocument3) document.DomDocument;
  var sHTML = documentAsIHtmlDocument3.documentElement.innerHTML;

sHTML 不包含我要查找的文本。

为什么不呢?任何建议将不胜感激。

查尔斯

【问题讨论】:

    标签: c# html screen-scraping


    【解决方案1】:

    我使用了您的代码,并且能够看到网页的内容。

    我在表单中添加了一个按钮,并在加载网页后单击它。

    如果我尝试从表单的 Load 事件处理程序中的 webBrowser 组件访问该文档,该文档为空,但它没有引发空指针异常。看起来代码运行了,但没有。只有通过添加 try - catch 块,我才检测到异常。

    【讨论】:

      猜你喜欢
      • 2013-11-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-13
      相关资源
      最近更新 更多