关于用ASP.NET获取别的网页的HTML代码

很久之前写的一个代码,用来获取某论坛的内容,其实也就类似一个采集程序
最近突然发现用不了
情况为在获取HTML的时候只能得到一个Forbidden或者403错误
但是用IE访问该网站是正常的
同时该网站的其他页面也都可以正常获取
因此排出了服务器的相关因素,
剩下的也就是论坛程序的问题
联想到该论坛前段时间遭到DDOS攻击,而论坛采用的又是PHPWIND程序
该程序有一个CC攻击防护的选项
其实所谓CC攻击防护也就是检查了头域的User-Agent用户信息部分
以前为了省事没写,故被程序认为是机器人或者非法访问
原代码:

            WebClient wc = new WebClient();
            wc.Credentials 
= CredentialCache.DefaultCredentials;
            Stream resStream 
= wc.OpenRead(web);
            StreamReader sr 
= new StreamReader(resStream, System.Text.Encoding.Default);
            code 
= sr.ReadToEnd();
            resStream.Close();

更改代码:
            WebClient wc = new WebClient();
            wc.Credentials 
= CredentialCache.DefaultCredentials;
            wc.Headers.Set(
"User-Agent""Microsoft Internet Explorer");//增加的代码
            Stream resStream = wc.OpenRead(web);
            StreamReader sr 
= new StreamReader(resStream, System.Text.Encoding.Default);
            code 
= sr.ReadToEnd();
            resStream.Close();

posted @ 2007-04-27 17:30  leon qian  阅读(2766)  评论(2编辑  收藏  举报