在日常开发中经常会爬取数据来进行监听页面,在爬取数据的时候我们知道需要使用代理服务器,如果不用代理,你的IP很有可能被封,那么微软在.NET Framework得System.Net名称空间里给我们提供了一个WebProxy类,不过这是仅仅只是一个http代理,这种代理使用起来受限太多,很不方便。如果我们需要访问更多的网络服务,Socks5代理是一个理想的选择。

  1. NuGet引入HttpToSocks5Proxy
  2. Dome
using MihaZupan;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
 
namespace test
{
    class Program
    {
        static void Main(string[] args)
        {
            //Socks5代理的IP和端口(针对的是sock5不加密的情况下写法)
            var socks5Hostname = "127.0.0.1";
            int socks5Port = 12345;
            Console.WriteLine("====================================================");
            Console.WriteLine("Socks5代理IP:"+ socks5Hostname + ":"+ socks5Port + "");
            Console.WriteLine("====================================================");
            HttpToSocks5Proxy proxy = new HttpToSocks5Proxy(socks5Hostname, socks5Port);
            HttpClientHandler handler = new HttpClientHandler() { Proxy = proxy };
            HttpClient httpClient = new HttpClient(handler, true);
            Task result = httpClient.GetStringAsync("https://www.masoft.cn");
            Console.WriteLine("result:" + result.Result);
            Console.ReadKey();
        }
    }
}
最后修改:2021 年 01 月 03 日 02 : 38 PM
如果觉得我的文章对你有用,请随意赞赏