C# 代理HTTP請求
阿新 • • 發佈:2020-04-24
C# 代理HTTP請求
目的: 應該有不少人需要去某些網站不停爬取資料,有時會使用HTTPRequest一直請求某個網站的某個網址。有的網站比如 QQ空間,趕集網(這是我測試的網站),不停重新整理會提醒你的賬號異常,可能會查封你幾天禁止訪問該網站。我想為了網站的安全,大多大型網站都會有這樣一個措施。
但是,有些工作的確需要抓取這些特定頁面上的資料?如何做?
答案是使用代理ip訪問這些網址
在C#中怎麼使用???
直接貼一下程式碼
代理ip網上一搜一大把,這個你可以自己去這個網站上抓取,這樣就可以測試哪些ip能用,哪些ip已經不能使用了
WebProxy proxyObject = new WebProxy(str,port);//str為IP地址 port為埠號 代理類
//HttpWebRequest Req = (HttpWebRequest)WebRequest.Create("http://www.baidu.com"); // 61.183.192.5
Req.UserAgent = "Mozilla/4.0 (compatible; MSIE 8.0; Windows
NT 6.1; Trident/4.0; QQWubi 133; SLCC2; .NET CLR 2.0.50727; .NET CLR
3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; CIBA; InfoPath.2)";
Req.Proxy = proxyObject; //設定代理
Req.Method = "GET";
HttpWebResponse Resp = (HttpWebResponse)Req.GetResponse();
string StringSub = "";
string OkStr = "";
Encoding code = Encoding.GetEncoding("UTF-8");
using (StreamReader sr = new StreamReader(Resp.GetResponseStream(),code))
str = sr.ReadToEnd();//獲取得到的網址html返回資料,這裡就可以使用某些解析html的dll直接使用了,比如htmlpaser
}