上网查了很多也没找到正确答案!
大家帮我看看!其中,url是维基百科的一个网页!        /// <summary>
        /// 获得页面的html代码
         /// </summary>
        /// <param name="url">页面地址</param>
        public string getHtml(string url)
        {
            string html = "";
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
            HttpWebResponse response = (HttpWebResponse)request.GetResponse(); //错误出在这里,远程服务器返回错误: (403) 已禁止。
            Stream stream = response.GetResponseStream();
            StreamReader reader = new StreamReader(stream, Encoding.Default);
            html = reader.ReadToEnd().Replace("\r\n", "");
            response.Close();
            return html;
        }

解决方案 »

  1.   

    你访问次数太多,被人家把IP干了。
    PS:你的Stream、StreamReader忘了关了,也许在以后会导致莫名其妙的错误。
    建议Response、Stream、StreamReader都使用using关键字。
      

  2.   

    应该不是封ip。我ie可以访问这个页面的,但是上面这段代码老是出错!
      

  3.   

    如果是那句出错的话,基本上是url的问题..你可以试其它url.比如:"http://www.tom.com/"应该可以的.
      

  4.   

    哈哈,突然想起,还有个问题,你的request头写的不对,被服务器干掉了。
    不带request头,服务器就知道你是程序了,加上头把这个request模拟成浏览器,就可以正常访问了。
    你如果用FF,就装个HTTPFox,如果用IE,就装个HttpAnalyzer,分析一下使用浏览器访问这个页面时request带的信息,然后在Create和GetResponse之间把这些信息添加到request上,再去访问应该就不会有问题了。
      

  5.   

    string url = "http://zh.wikipedia.org/w/index.php?title=Wikipedia:%E5%88%86%E9%A1%9E%E7%B4%A2%E5%BC%95&variant=zh-cn";
    这个昨天访问有问题,今天很正常!其他的都有问题,比如这个:
    string url = "http://zh.wikipedia.org/w/index.php?title=Category:%E6%94%B6%E8%97%8F&variant=zh-cn";很困惑!照道理说,如果ip被禁掉的话,这个网站的所有页面都打不开才对,但是现在有的可以,有的不可以!