3

我正在查看以下网站:www.example.com

我正在使用 GeckoWebBrowser 对象导航到该站点,并每秒拍摄该对象的 HTML 快照。然后我导航 DOM 以获取我想要的表 (div = 'tableContainer'),获取此元素的 InnerHTML,并将表解析为 C#.Net 数据集。然后我可以创建“价格”对象并继续处理更新。

我想异步执行此操作:无需在循环中检查元素的 HTML。如果没有更新,我什么都不想做。如果有更新,我想收集 HTML(最好只针对已更新的行/列/单元格!!)。我该怎么做以下任何一个

this.geckoWebBrowser1.Window.Scripter.AddEventListener("updateItem_inJavaScriptCode", new EventHandler<DOMJSONStringEventArgs>(OnMyExtensionEvent));

或者

Skybound.Gecko.GeckoElement tableContainer = gwb.Document.GetElementById("tableContainer");
tableContainer+= new GeckoDOMElementHTMLCHANGEDUPDATE(methodToCallWithDOMUpdate);`

我将不胜感激在 Java 或 C#.Net 或任何指针中对此提出的任何建议。

谢谢。

4

1 回答 1

0

请参阅:https ://developer.mozilla.org/en/DOM/DOM_event_reference

据我所知,您需要的所有事件都不是标准的一部分,但如果您只是为您控制的客户开发,我想没有问题。

这当然是错误的。为什么不跳过 HTML 抓取步骤,直接从网页插入的任何 Web 服务中获取数据?

我认为 DOM 只是一个 UI 模型,它不是数据源。数据源应该是您的 Web 服务。

于 2011-12-14T04:14:13.283 回答