这是我的测试代码:
 private string GetPageData(string url)
        {
            string strResult =string.Empty ;
            try
            {
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
                //声明一个HttpWebRequest请求
                request.Timeout = 30000;
                //设置连接超时时间
                request.Headers.Set("Pragma", "no-cache");
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                Stream streamReceive = response.GetResponseStream();
                Encoding encoding = Encoding.GetEncoding("GB2312");
                StreamReader streamReader = new StreamReader(streamReceive, encoding);
                strResult = streamReader.ReadToEnd();
            }
            catch
            {
                
            }
            return strResult;
        }GetPageData("http://www.bijiaqi.com/cyw");
可是网页并没有抓取出来。

解决方案 »

  1.   

    抓取出来的是这样的字符串
    <!--@R--><script>
            var k ='ecfbbca6'; 
            var d = new Date(); 
            d.setTime(d.getTime() + (3600*24*365*5*1000));
            document.cookie = "pd5=" + k +"; expires=" + d.toGMTString();
            setTimeout(function(){
                window.location.reload();
            },2000);
            </script>正在下载服务器数据...
      

  2.   

    我还以为你这样的还是空的字符串
    那你必须解析js啊
    你搜索下 在C#下如何解析javascript
      

  3.   


    private string GetWebContent(string sUrl)
            {
                string strResult = "";
                try
                {
                    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(sUrl);
                    //声明一个HttpWebRequest请求
                    request.Timeout = 3000000;
                    //设置连接超时时间
                    request.Headers.Set("Pragma", "no-cache");
                    HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                    if (response.ToString() != "")
                    {
                        Stream streamReceive = response.GetResponseStream();
                        Encoding encoding = Encoding.GetEncoding("UTF-8");
                        StreamReader streamReader = new StreamReader(streamReceive, encoding);
                        strResult = streamReader.ReadToEnd();
                    }
                }
                catch (Exception exp)
                {
                    //MessageBox.Show("出错");
                    MessageBox.Show(exp.Message);
                }
                return strResult;
            }
    //测试:string str=GetWebContent("http://www.baidu.com");