C# 利用代理 (proxy) 爬网

 

情况描述:
  • 对某些内部网络,要访问外面,需要走代理
  • 投票刷票的时候,限制IP地址
  • 干其他坏事

其实从.NET 2.0 开始,.NET开发的程序,利用代理访问网络就已经很容易了,微软 为我们封装好了 WebProxy,我们所要做的,只是指定一下代理服务器的具体信息就OK了 ,不罗嗦了,上代码

//需要使用的NameSpace: System.Net
//代码片段
//......
using ( WebClient wc = new WebClient () )
{
  WebProxy wp = new WebProxy ( "代理服务器IP地址:代理服务器端口" ), true );

  if (代理服务器不要身份验证)
  {
    wp.Credentials = CredentialCache.DefaultCredentials;
  }
  else
  {
    wp.Credentials = new NetworkCredential("用户名", "密码");
  }

  wc.Proxy = wp; //指定代理

  wc.Encoding = System.Text.Encoding.Default; //此项用来预防返回乱码

  ////下面开始爬网,WebClient 的使用自己看MSDN吧,嘿嘿,偷懒了
  //wc.DownloadString(....)
  //wc.OpenWrite()

}

注: 代理也分类型, 如 http代理, sock4, sock5等, 大家使用时自己留心就可以了。

 

你可能感兴趣的:(.net,网络,C#,服务器,微软)