关于用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();

你可能感兴趣的:(asp.net)