• C# 代理HTTP请求


    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.whatismyip.com.tw"); // 访问这个网站 ,返回的就是你发出请求的代理ip 这个做代理ip测试非常方便,可以知道代理是否成功

    //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 

    }

  • 相关阅读:
    HDU-1527 取石子游戏
    HDU-1846 Brave Game
    HDU-1850 Being a Good Boy in Spring Festival
    HDU-2509 Be the Winner
    HDU-1907 John
    HDU-1969 Pie
    HDU-1501 Zipper
    HDU-2289 Cup
    最大子矩阵和
    HDU3466(01背包变种)
  • 原文地址:https://www.cnblogs.com/yidanda888/p/12768380.html
Copyright © 2020-2023  润新知