http://video.shishicai.cn/Lottery/Speed/FCCQSSC/Trend/bz5x_zs_zhzs.aspx?day=2  这个网页,我原来用getValueFromWeb函数可以抓取这个网页的数据,从而可以进行数据分析。但不知道为什么,还是同一个网页,现在抓取的数据始终为空了呢?请高手指点,有好心人请给出抓取数据的函数,让小弟拜读一下。
 public static string GetValueFromWeb(string url)
        {
            string html = null;
            WebRequest req = WebRequest.Create(url);
            WebResponse res = req.GetResponse();
            Stream stream = res.GetResponseStream();
            Encoding encode = Encoding.GetEncoding("UTF-8");
            StreamReader sr = new StreamReader(stream, encode);            char[] readbuffer = new char[256];
            int n = sr.Read(readbuffer, 0, 256);
            while (n > 0)
            {
                string str = new string(readbuffer, 0, n);
                html += str;
                n = sr.Read(readbuffer, 0, 256);
            }            return html;
        }

解决方案 »

  1.   

    检查httpWebResponse.Headers
    使用其他方法试试如httpwebrequest
      

  2.   

    貌似是对方网站检查了访问方的类别,你加上这句话
    WebRequest req = WebRequest.Create(url);
    ((HttpWebRequest)req).UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";
    我测试了,加上以后就可以抓下来了
      

  3.   

    对方对非浏览器的浏览都作了限制,明白了么?
    在你WebRequest req = WebRequest.Create(url);这句话后面加上
    ((HttpWebRequest)req).UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";
    就可以了