常见问题
产品介绍
代码示例

c sharp示例代码

    // 河马短效代理测试
    
    using System;
    using System.IO;
    using System.Net;
    using System.Text;
    using System.Threading;
    

    namespace HemaDynamicTest
    {
        class Program
        {
            
            /*
             * 此处填写河马代理短效代理API提取链接
             * 格式如 http://api.hemadaili.com/proxy/extract?order=XXXX&count=1&pt=0&fmt=0&sep=2&dd=1
             *
             * 链接的获取地址 http://www.hemadaili.com/extract/blend.html (使用浏览器打开)
             */
            
            static string apiUrl = "http://api.hemadaili.com/proxy/extract?order=XXXX&count=1&pt=0&fmt=0&sep=2&dd=1"; // "用API链接替换这里";

            const int TestCount = 10; // 测试次数

            // 主函数

            static void Main(string[] args)
            {
                Console.WriteLine("============= 河马代理短效代理测试 ============= ");

                // 进行10次测试
                for (int i = 0; i < TestCount; i++)
                {
                    TestIp();
                    Thread.Sleep(5000);
                    Console.WriteLine();
                }
                Console.WriteLine("============= 河马代理短效代理测试 ============= ");
                Console.ReadKey(true);
            }

            public static void TestIp()
            {
                // 首先提取代理IP 此处不使用代理
                string resp = Get(apiUrl, null);

                string[] ips = resp.TrimEnd('\r').TrimEnd('\n').Split('\n'); // 拆分多个IP
                foreach (string ip in ips)
                {
                    Console.WriteLine("============= 提取到IP ============= ");
                    Console.WriteLine(ip);

                    // 代理
                    WebProxy proxy = new WebProxy();
                    proxy.Address = new Uri("http://" + ip);
                    proxy.BypassProxyOnLocal = false; // 本地地址不使用代理

                    // http://ip.kitty.prod/ipquery?ip=
                    resp = Get("http://pv.sohu.com/cityjson?ie=utf-8", proxy); // 使用代理IP访问,显示结果
                    Console.WriteLine("============= IP信息 ============= ");
                    Console.WriteLine(resp);
                }

            }

            // Http Get方法

            public static string Get(string url, WebProxy proxy)
            {
                string result = "";
                HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
                req.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";

                // 如果配置了代理则使用
                if (proxy != null)
                {
                    req.Proxy = proxy;
                }

                HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
                Stream stream = resp.GetResponseStream();
                try
                {
                    //获取内容
                    using (StreamReader reader = new StreamReader(stream)) // 编码根据实际网页确定
                    {
                        result = reader.ReadToEnd();
                    }
                }
                finally
                {
                    stream.Close();
                }
                return result;
            }

        }
    }