C#Webbrowser没有加载完整的网页 - 页面加载的事件处理程序

时间:2015-10-22 17:29:36

标签: c# events webbrowser-control domdocument

我有一个webpage that I want to monitor,其中包含我想要阅读和存储的股票市场信息。收集的信息将存储在某处,例如.csv文件或类似文件以供以后分析。

我遇到的第一个问题是检测此页面何时完全加载。加载所需的时间差别很大。事件处理程序我已经尝试了多次(我知道这已被覆盖,我已经尝试了各种技术,但无济于事)。也许它与这个网页有关?无论如何,我需要知道这个页面何时已经完全加载并且正好坐着,所有图形都正确显示。

第二个问题是,我无法将真正的源页面放入webbrowser。因此,对DOM的所有访问都会失败,因为webbrowser控件中的HTML表示看起来与网页上实际发生的不匹配。我已经转储了文本(webBrowser2.DocumentText),它看起来与我在浏览器中查看源代码时所看到的一样,例如chrome。 (我也使用Firefox中的firebug扩展来仔细检查)。如何才能进入webbrowser的正确页面,以便我可以开始操作?

基本上,就数据而言,我需要GMT时间,执行率和到期时间。我的过程将使用定时器控件进行监控。能够在屏幕上阅读所有其他元素数据是一个很好的选择。

可以这样做吗?

我是一名经验丰富的网络编程和C#程序员。

1 个答案:

答案 0 :(得分:1)

我想你想要this AJAX request

作为评论,网络首先加载网页,然后扫描网页以获取需要加载的其他文件(js,css,图像等)。完成后,会触发onload事件并运行某些AJAX函数。

在这种情况下,只加载了部分页面,AJAX函数稍后会更新图表中的数据。正如您所见,“显示源”仅显示已下载的原始文件,并且转储其当前状态。

获取数据的最简单方法是找到加载图数据的AJAX请求的URL。它已经方便地用JSON格式化,你可以废弃。

相关问题