请问C#如何能采集到
http://ggzx.stock.hexun.com/more.jsp?t=0&k=600004&s=0
这个网站??/
我试了HttpWebRequest,WebRequest和Webclient都不行求解!!!

解决方案 »

  1.   

    - -
    偶了解到这网站是用GZIP压缩的。。
    求解
      

  2.   

    GZIP也许是防采集的手段
    在Form中用webBrowser,不过是这用桌面软件的方法是下下策
      

  3.   


    压缩,哇咔咔,我长这么大还没见过哪个网站的页面是压缩过的.不管访问啥网站,返回的HTML都是文本格式的.
    你只要模拟一下正常浏览器获取页面的方式就行了,就算用Sockets也能直接获取源码
      

  4.   

    试一试,这边可以获取页面源代码string charset = "GBK";
    int fileLength = 1024000;
    byte[] buffer = new byte[fileLength]; // 这个数组存放数据
    string html = string.Empty;
    string url = "http://ggzx.stock.hexun.com/more.jsp?t=0&k=600004&s=0";HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(url);
    HttpWebResponse httpWebResponse = (HttpWebResponse)httpWebRequest.GetResponse();System.IO.Stream stream = httpWebResponse.GetResponseStream();
    int readSize = 0;//本次从 Stream 读取到 buffer 中的长度
    int readedTotalSize = 0;//已经从 Stream 读取的量
    do
    {
        readSize = stream.Read(buffer, readedTotalSize, fileLength - readedTotalSize);
        readedTotalSize += readSize;
    }
    while (readSize != 0); // 这里每次读一点数据,如果读不到数据就表示读完了httpWebResponse.Close();html = System.Text.Encoding.GetEncoding(charset).GetString(buffer, 0, buffer.Length); // 转成字符串
      

  5.   


    压缩的多了。百度、谷歌的就是压缩的。现在压缩很流行,iis7 默认就开启压缩。