System.Windows.Forms.WebBrowser控件抓取页面代码:
webBrowser.DocumentCompleted += webBrowser_Wzhb_DocumentCompleted; //加载完成后事件
string html;//页面信息
bool IsFinished;//是否加载完成
/// <summary>
/// 获取WebBrowser页面信息
/// </summary>
/// <returns></returns>
private string GetHtml(string url)
{
IsFinished = false;
html=string.Empty;
int index = 1;
webBrowser.Navigate(url);
var html = string.Empty;
while (true)
{
index++;
Delay(500);
if (IsFinished) //判断文档是否加载完毕
{
html = webBrowser.Document.Body.InnerHtml;
break;
}
if (index > 3)
break;
}
return html;
}
/// <summary>
/// 加载完成后事件
/// </summary>
/// <returns></returns>
private void webBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
if (webBrowser.ReadyState == WebBrowserReadyState.Complete && e.Url.ToString() == webBrowser.Url.ToString())
{
if (!webBrowser.IsBusy)
{
IsFinished = true;
}
}
}