首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

HttpWebRequest怎么获取完整的网页

2013-08-01 
HttpWebRequest如何获取完整的网页我想获取网页上一个链接,但是这个链接是通过js加载出来的,用下这个代码

HttpWebRequest如何获取完整的网页
我想获取网页上一个链接,但是这个链接是通过js加载出来的,用下这个代码获取总是js加载完成前的源码,怎么才有得到js加载完成后的网页呢?

                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
                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;
HttpWebRequest
[解决办法]
  webbrowser documentComplete判断当前加载网页位置以及页面,然后获取页面源码。
[解决办法]
HttpWebRequest好像没有提供加载完成的判断的,建议使用WebBrowser的documentComplete来获取完整页面代码,具体实现参考:http://www.cnblogs.com/ceachy/articles/CSharp_Retrive_Page_Document.html



[解决办法]
webbrowser可以执行js,所以能弹出保存对话框。但是HttpWebRequest就不能执行js了。
可以从网页源码中获取js代码解析出url,但是网页的js也可能是调用了另外一个js文件的函数,这样就要再去解析那个js文件,一直到找到需要的url为止,这时就可以再用HttpWebRequest去访问找出的那个url了。

热点排行