稳定 · 安全· 更实惠的海外IP代理方案

优选全球190+国家或地区节点资源,专注提供稳定、快速、高效的海外IP代理服务,支持HTTP、HTTPS和SOCKS5等协议,价格透明、套餐灵活,助力跨境业务轻松起步。

  • 190+

    全球190+个地区

  • 9000W+

    9000W+住宅代理IP

  • <0.5s

    平均响应时长<0.5s

  • 7*24

    7*24H技术支持

探索适合您业务的完美代理

不同类型的代理满足您不同业务需求

什么是IP代理?

IP代理‌是一种通过代理服务器进行网络连接的技术,它是您的设备和互联网之间的中间人,当您通过IP代理访问网络时,用户的网络请求会先发送至代理服务器,然后由代理服务器再转发至目标网站或服务器,实现网络访问的目的。

海外住宅代理 来自全球190个地区9000多万的真实住宅代理IP。按照流量收费,不限制IP请求数,适合高并发业务使用。

起售价 12/GB

  • 辣椒HTTP正常运行时间99.99%
  • 辣椒HTTP多种提取方式
  • 辣椒HTTP平均响应时常<0.5s
  • 辣椒HTTP支持轮转和粘性会话

无限住宅代理 包含欧美等 180+热门地区,独享服务器,支持定制带宽,无限流量和IP数量。

起售价 ¥293/天

静态长效住宅 独享真实住宅IP,有更稳定、更长的会话时长,支持IP续费。

起售价 20.2/个

遍布全球的代理资源

拥有超过9000万的IP资源,涵盖纽约、伦敦等主要都市的核心网络节点,以及部分偏远地区的线路,能够满足多样化的代理需求。

辣椒HTTP
辣椒HTTP

美国 7,678,036 IPs

辣椒HTTP

英国 3,566,689 IPs

辣椒HTTP

德国 2,325,311 IPs

辣椒HTTP

法国 1,933,978 IPs

辣椒HTTP

加拿大 1,924,855 IPs

辣椒HTTP

意大利 984,231 IPs

辣椒HTTP

西班牙 1,707,759 IPs

辣椒HTTP

其他 49,879,141 IPs

探索所有地点

辣椒代理为您提供专业的解决方案

通过有效保护您的IP信息、支持多区域访问和精准筛选数据,帮助您在隐私安全、资源获取和决策优化等方面提供综合支持,打造多功能的解决方案。

辣椒HTTP

电子商务

通过使用 辣椒代理 的电子商务代理和抓取基础设施,检索公共电子商务数据,以增强竞争情报和电子商务市场了解。

  • 辣椒HTTP 实现精准洞察市场
  • 辣椒HTTP 保障多账号安全稳定运营
  • 辣椒HTTP 提升广告投放精准度与效果
了解更多辣椒HTTP
辣椒HTTP

品牌保护

利用辣椒代理进行大规模查询,帮助保护您的网络数据安全,轻松获取本地信息,验证本地化网站,开展市场调研或分析国际竞争环境。

  • 辣椒HTTP 素质卓越品牌形象
  • 辣椒HTTP 优化广告投放与营销效果
  • 辣椒HTTP 协助防范网络风险和数据泄露
了解更多辣椒HTTP
辣椒HTTP

网络安全

通过使用辣椒HTTP代理的代理池,帮助您高效收集关键数据,访问尽可能多的资源,支持智慧财产权的保护。借助全球多地内容获取洞察,助力您做出更为稳健的安全决策。

  • 辣椒HTTP 防范网络恶意攻击
  • 辣椒HTTP 保护隐私安全
  • 辣椒HTTP 高效访问特定区域资源
了解更多辣椒HTTP
辣椒HTTP

旅游和酒店

使用辣椒代理的网络智能工具检索票价、住宿情况和其他旅行数据,以获得竞争优势。收集实时航班和酒店数据,为您的旅游业务制定基于证据的策略。

  • 辣椒HTTP 价格比较与订购优惠
  • 辣椒HTTP 规避网络风险隐患
  • 辣椒HTTP 有序规划与精准管理
了解更多辣椒HTTP

通过帮助中心了解更多集成

辣椒HTTP代理支持多种主流反检测浏览器、编程语言,以及Windows、Mac、Web等多种系统平台。

了解更多

轻松将辣椒代理集成到您的项目中

兼容各种热门程序语言和三方集成软件,通过设置基础设施的代码示例和指导快速抓取相关网页数据。

  • 辣椒HTTP 代码示例
  • 辣椒HTTP 兼容第三方集成软件
  • 辣椒HTTP 创建并管理子用户
开始使用 辣椒HTTP

C/C++ Go Node.js PHP JAVA Python


    #include 
    #include 
    #include 
    #include 
    #include "curl/curl.h"
    #pragma comment(lib, "libcurl.lib")
    using namespace std;
    static size_t write_buff_data(char* buffer, size_t size, size_t nitems, void* outstream)
    {
        memcpy(outstream, buffer, nitems * size);
        return nitems * size;
    }

    // http protocol
    int GetHTTPFunc(char* url, char* buff)
    {
        CURL* curl;
        CURLcode res;
        curl = curl_easy_init();
        if (curl)
        {
            curl_easy_setopt(curl, CURLOPT_PROXY, "http://hostname:port");     // hostname:port = us.lajiaohttp.net:2000
            curl_easy_setopt(curl, CURLOPT_PROXYUSERPWD, "username:password"); // sub-account and password
            curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void*)buff);
            curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_buff_data);
            curl_easy_setopt(curl, CURLOPT_URL, url);
            curl_easy_setopt(curl, CURLOPT_LOW_SPEED_TIME, 10L);
            curl_easy_setopt(curl, CURLOPT_LOW_SPEED_LIMIT, 50L);
            curl_easy_setopt(curl, CURLOPT_MAX_RECV_SPEED_LARGE, 2000000L);
            res = curl_easy_perform(curl);
            curl_easy_cleanup(curl);
            if (res == CURLE_OK) {
                return res;
            }
            else {
                printf("http status code:%d", res);
                MessageBox(NULL, TEXT("Get IP Error"), TEXT("assistant"), MB_ICONINFORMATION | MB_YESNO);
            }
        }
        return res;
    }

      // Socks5 protocol
    int GetSocks5Func(char* url, char* buff)
    {
        CURL* curl;
        CURLcode res;
        curl = curl_easy_init();
        if (curl)
        {
        curl_easy_setopt(curl, CURLOPT_PROXY, "socks5://hostname:port");    // hostname:port = us.lajiaohttp.net:2000
        curl_easy_setopt(curl, CURLOPT_PROXYUSERPWD, "username:password");  //sub-account and password
        curl_easy_setopt(curl, CURLOPT_SOCKS5_AUTH, CURLAUTH_SOCKS5_USERPWD);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void*)buff);
        curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_buff_data);     // Callback
        curl_easy_setopt(curl, CURLOPT_URL, url);
        curl_easy_setopt(curl, CURLOPT_LOW_SPEED_TIME, 10L);
        curl_easy_setopt(curl, CURLOPT_LOW_SPEED_LIMIT, 50L);
        curl_easy_setopt(curl, CURLOPT_MAX_RECV_SPEED_LARGE, 2000000L);
        res = curl_easy_perform(curl);
        curl_easy_cleanup(curl);

        if (res == CURLE_OK) {
            return res;
        }
        else {
            printf("status code:%d", res);
            MessageBox(NULL, TEXT("Get IP Error"), TEXT("assistant"), MB_ICONINFORMATION | MB_YESNO);
        }
        }
        return res;
    }

    int func()
    {
        string strUrl = "ipinfo.io";
        char* buff = (char*)malloc(1024 * 1024);
        memset(buff, 0, 1024 * 1024);

        //HTTP proxies
        memset(buff, 0, 1024 * 1024);
        GetHTTPFunc((char*)strUrl.c_str(), buff);
        printf("Http results:%s", buff);

        //Socks5 proxies
        memset(buff, 0, 1024 * 1024);
        GetSocks5Func((char*)strUrl.c_str(), buff);
        printf("Socks5 result:%s", buff);
        free(buff);
        return 0;
    }

    int main()
    {
        return func();
    }
            

    package main
    import (
        "context"
        "fmt"
        "golang.org/x/net/proxy"
        "io/ioutil"
        "net"
        "net/http"
        "net/url"
        "strings"
        "time"
    )

    var ipInfoUrl = "https://ipinfo.io"

    func main() {
        var hostnamePort = "us.lajiaohttp.net:2000"
        var username = "xxxx-region-US-sid-xrwfyi678-t-10"  // xxxx = your sub-account
        var password = ""    // sub-account password
        HttpProxy(proxyIP, username, password)
        time.Sleep(time.Second * 1)
        Socks5Proxy(proxyIP, username, password)

    }
    func HttpProxy(hostnamePort, username, password string) {
        defer func() {
            if err := recover(); err != nil {
                fmt.Println(err)
            }
        }()
        urli := url.URL{}
        proxyUrl = fmt.Sprintf("http://%s", hostnamePort)


        urlProxy, _ := urli.Parse(proxyUrl)
        if username != "" && password != "" {
            urlProxy.User = url.UserPassword(username, password)
        }

        client := &http.Client{
            Transport: &http.Transport{
                Proxy: http.ProxyURL(urlProxy),
            },
        }
        req, err := http.NewRequest("GET", ipInfoUrl, nil)
        if err != nil {
            panic(err)
            return
        }
        response, err := client.Do(req)
        if err != nil {
            panic(err)
            return
        }
        defer response.Body.Close()
        body, _ := ioutil.ReadAll(response.Body)
        fmt.Println("http status = ", response.Status)
        fmt.Println("content = ", string(body))
        return
    }

    func Socks5Proxy(hostnamePort, username, password string) {

        defer func() {
            if err := recover(); err != nil {
                fmt.Println(err)
            }
        }()

        var userAuth proxy.Auth
        if username != "" && password != "" {
            userAuth.User = username
            userAuth.Password = password
        }
        dialer, err := proxy.SOCKS5("tcp", proxyUrl, &userAuth, proxy.Direct)
        if err != nil {
            panic(err)
            return
        }
        httpClient := &http.Client{
            Transport: &http.Transport{
                DialContext: func(ctx context.Context, network, addr string) (conn net.Conn, err error) {
                    return dialer.Dial(network, addr)
                },
            },
            Timeout: time.Second * 10,
        }

        resp, err := httpClient.Get(ipInfoUrl)

        if err != nil {
            panic(err)
            return
        }
        defer resp.Body.Close()
        body, _ := ioutil.ReadAll(resp.Body)
        fmt.Println("content = ",string(body))
        return
    }
            

    const SocksProxyAgent = require('socks-proxy-agent');
    const net = require('net');

    const proxyConfig = {
      host: 'us.lajiaohttp.io',
      port: 2000,
      username: 'your sub-account username',
      password: 'your sub-account password'
    };

    const agent = new SocksProxyAgent({
    ...proxyConfig,
    });

    const socket = net.connect({
      host: 'ipinfo.io',
      port: 80,
      agent
    });

    socket.on('connect', () => {
      console.log('Connect socks5 proxy.');
    });

    socket.on('error', err => {
      console.log('error = ', err);
    });
            
              
                
    $targetUrl = "https://ipinfo.io/";
    $proxyServer = "http://us.lajiaohttp.net:2000";
    $proxyUserPwd = "username:password";
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $targetUrl);
    curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_PROXYTYPE, 0); //http protocol;  sock5 protocolis is curl_setopt($ch, CURLOPT_PROXYTYPE, 5);
    curl_setopt($ch, CURLOPT_PROXY, $proxyServer);
    curl_setopt($ch, CURLOPT_PROXYAUTH, CURLAUTH_BASIC);
    curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36");
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3);
    curl_setopt($ch, CURLOPT_TIMEOUT, 5);
    curl_setopt($ch, CURLOPT_HEADER, true);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_PROXYUSERPWD, $proxyUserPwd);
    $result = curl_exec($ch);
    $err = curl_error($ch);
    curl_close($ch);
    var_dump($err);
    var_dump($result);
              
            
              
    package demo;
    import okhttp3.Credentials;
    import okhttp3.OkHttpClient;
    import okhttp3.Request;
    import java.io.IOException;
    import java.net.InetSocketAddress;
    import java.net.PasswordAuthentication;
    import java.net.Proxy;

    class AutProxyJava {
    public static void main(String[] args) throws IOException {
        testWithOkHttp();
        testSocks5WithOkHttp();
    }

    public static void testWithOkHttp() throws IOException {
        String url = "https://ipinfo.io";
        Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("us.lajiaohttp.io", 2000));
        OkHttpClient client = new OkHttpClient().newBuilder().proxy(proxy).proxyAuthenticator((route, response) -> {
            String credential = Credentials.basic("subAccount-region-US", password); // update your sub-account and password
                return response.request().newBuilder()
            .header("Proxy-Authorization", credential).build();
        }).build();


        Request request = new Request.Builder().url(url).build();
        okhttp3.Response response = client.newCall(request).execute();
        String responseString = response.body().string();
        System.out.println(responseString);
    }

    public static void testSocks5WithOkHttp() throws IOException {
        String url = "https://ipinfo.io";
        Proxy proxy = new Proxy(Proxy.Type.SOCKS, new InetSocketAddress("us.lajiaohttp.io", 2000));
        java.net.Authenticator.setDefault(new java.net.Authenticator() {
            private PasswordAuthentication authentication =
            new PasswordAuthentication("sub account username", "sub account password".toCharArray()); // sub-account and password

            @Override
            protected PasswordAuthentication getPasswordAuthentication() {
                return authentication;
            }
        });
        OkHttpClient client = new OkHttpClient().newBuilder().proxy(proxy).build();

        Request request = new Request.Builder().url(url).build();
        okhttp3.Response response = client.newCall(request).execute();
        String responseString = response.body().string();
        System.out.println(responseString);
    }
}
              
            
              
    import urllib
    import socks
    import http.client
    from urllib.error import URLError
    import ssl
    from urllib.request import build_opener, HTTPHandler, HTTPSHandler

    def merge_dict(a, b):
    d = a.copy()
    d.update(b)
    return d

    class SocksiPyConnection(http.client.HTTPConnection):
    def __init__(self, proxytype, proxyaddr, proxyport=None, rdns=True, username=None, password=None, *args, **kwargs):
        self.proxyargs = (proxytype, proxyaddr, proxyport, rdns, username, password)
        http.client.HTTPConnection.__init__(self, *args, **kwargs)

    def connect(self):
        self.sock = socks.socksocket()
        self.sock.setproxy(*self.proxyargs)
        if type(self.timeout) in (int, float):
            self.sock.settimeout(self.timeout)
        self.sock.connect((self.host, self.port))

    class SocksiPyConnectionS(http.client.HTTPSConnection):
    def __init__(self, proxytype, proxyaddr, proxyport=None, rdns=True, username=None, password=None, *args, **kwargs):
        self.proxyargs = (proxytype, proxyaddr, proxyport, rdns, username, password)
        http.client.HTTPSConnection.__init__(self, *args, **kwargs)

    def connect(self):
        sock = socks.socksocket()
        sock.setproxy(*self.proxyargs)
        if type(self.timeout) in (int, float):
            sock.settimeout(self.timeout)
        sock.connect((self.host, self.port))
        self.sock = ssl.wrap_socket(sock, self.key_file, self.cert_file)

    class SocksiPyHandler(HTTPHandler, HTTPSHandler):
    def __init__(self, *args, **kwargs):
        self.args = args
        self.kw = kwargs
        HTTPHandler.__init__(self)

    def http_open(self, req):
        def build(host, port=None, timeout=0, **kwargs):
            kw = merge_dict(self.kw, kwargs)
            conn = SocksiPyConnection(*self.args, host=host, port=port, timeout=timeout, **kw)
            return conn

        return self.do_open(build, req)

    def https_open(self, req):
        def build(host, port=None, timeout=0, **kwargs):
            kw = merge_dict(self.kw, kwargs)
            conn = SocksiPyConnectionS(*self.args, host=host, port=port, timeout=timeout, **kw)
            return conn

        return self.do_open(build, req)

    username = "your sub-account username"
    password = "your sub-account password"
    ip = "us.lajiaohttp.io"
    port = 2000
    proxy = "socks5://{username}:{password}@{ip}:{port}".format(username=username, password=password, ip=ip, port=port)
    # socks.set_default_proxy(socks.SOCKS5, ip, port,username=username,password=password)
    # socket.socket = socks.socksocket

    url = 'https://ipinfo.io/'

    try:
        req = urllib.request.Request(url=url, headers={'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36'})
        opener = build_opener(SocksiPyHandler(socks.SOCKS5, ip, port, username=username, password=password))
        response = opener.open(req)
        print(response.read().decode('utf-8'))
    except URLError as e:
        print(e)
              
            

copy

深受客户们的信赖

来自全球各行各业超过20000精英的支持。

辣椒HTTP

广告数据分析师 -苏晴-

评估广告投放效果,跨网域追踪是工作中的难题。自从用了代理后,可以精准模拟各地受众,实时追踪广告反馈,优化策略有的放矢,客户投放回报率显著提高,是我工作中必不可少的存在!
辣椒HTTP

软件测试工程师 -Lucas Müller-

工作中需要测试软件在不同地区和网络环境下的兼容性及用户体验。使用辣椒代理后,可以稳定模拟多个网络环境,帮助提升测试效果,保障项目按时交付,提升整体质量与团队效率,是开发过程中非常实用的辅助工具。
辣椒HTTP

金融数据分析师 -张勇杨-

分析金融市场趋势,需要整合全球数据。过去受限较多,使用辣椒代理后,可以顺畅访问各国网络,获取大量一手金融数据,提升模型预测能力,为投资决策提供有力支持。

欢迎使用辣椒代理

立即注册,免费领取 2GB

专属客户经理

立即注册 辣椒HTTP
¥5/GB

海外住宅代理

¥20.2/个

静态长效住宅

¥293/天

不限量带宽

¥2.5/个/天

不限量端口

辣椒HTTP
在线客服

专属客户经理

专属客户经理

扫一扫添加您的专属客户经理