【发布时间】:2012-07-18 17:11:04
【问题描述】:
我创建了一个从网页抓取数据并将其保存到数据库的应用程序。此页面发送一些 __postbacks。回发后,页面加载了一些我需要保存的数据。我不知道如何检测这个事件,所以我创建了一个按钮,当用户按下它时会抓取数据。 如何使该过程自动化,以便用户不必自己检查回发? 那我怎样才能在我的浏览器控件中检测回发事件?
【问题讨论】:
我创建了一个从网页抓取数据并将其保存到数据库的应用程序。此页面发送一些 __postbacks。回发后,页面加载了一些我需要保存的数据。我不知道如何检测这个事件,所以我创建了一个按钮,当用户按下它时会抓取数据。 如何使该过程自动化,以便用户不必自己检查回发? 那我怎样才能在我的浏览器控件中检测回发事件?
【问题讨论】:
网络浏览器控件有一个 DocumentCompleted 事件。您可以使用WebBrowser.Document 属性来查找此事件中的特定内容。
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) {
if (webBrowser1.Document.Body.InnerHtml.Contains("some way that I know I am ready"))
}
【讨论】:
WebBrowser.ReadyState 会有所不同,您可能只需要在状态为 WebBrowserReadyState.Complete 时进行处理