要求:模拟点击下一页,选择显示70/条每页,(抓包不知是否可获得下一页的地址),我的代码如下,运行后获得的html代码仍为第一页,没有翻页。
public class gWebByWebBrowser
{
WebBrowser web;
HtmlElement btnAdd = null;
public gWebByWebBrowser(){
web = new WebBrowser();
}
public string GetHtml(string url, WBrowserPara wBrowserPara){
//web.DocumentCompleted += web_DocumentCompleted;
web.Navigate(url);
while (web.ReadyState != WebBrowserReadyState.Complete) Application.DoEvents();
eventCounter = 0;
operation();
return web.DocumentText;
}
void operation(){ // 模拟操作
HtmlElementCollection Aresults = web.Document.GetElementsByTagName("a");
foreach (HtmlElement item in Aresults){
if (item.InnerHtml == "下页") { btnAdd = item; }
}
btnAdd.InvokeMember("onclick");
foreach (HtmlElement f in web.Document.GetElementsByTagName("option"))
{
if (f.InnerText == @"显示70条/页")
{
f.InvokeMember("Click");
f.SetAttribute("selected", "selected");
}
}
web.Refresh();
while (web.ReadyState != WebBrowserReadyState.Complete) Application.DoEvents();
}
}