HttpWebRequest如何获取完整的网页
我想获取网页上一个链接,但是这个链接是通过js加载出来的,用下这个代码获取总是js加载完成前的源码,怎么才有得到js加载完成后的网页呢?
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);HttpWebRequest
request.Timeout = 30000;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream receiveStream = response.GetResponseStream();
StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8);
strResult = readStream.ReadToEnd();
if (request.HaveResponse)
{
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
return strResult;
[解决办法]
webbrowser可以执行js,所以能弹出保存对话框。但是HttpWebRequest就不能执行js了。
可以从网页源码中获取js代码解析出url,但是网页的js也可能是调用了另外一个js文件的函数,这样就要再去解析那个js文件,一直到找到需要的url为止,这时就可以再用HttpWebRequest去访问找出的那个url了。