For the complete documentation index, see llms.txt. This page is also available as Markdown.

Proxy Rotator - Opcional

Saiba mais sobre o Proxy Rotator, sua função como um endpoint rotativo e seus recursos de controle de sessão.

Este serviço é opcional; se você quiser usar Proxy Rotator, entre em contato com seu Gerente de Conta para receber um domínio.

Em vez de se conectar a IPs individuais, fornecemos um único endpoint para sua lista de proxy atribuída. A cada solicitação, o endpoint busca um IP diferente. Veja o exemplo abaixo para aprender como usar o endpoint como um proxy.

O vm.oxylabs.io domínio é apenas um exemplo. Entre em contato com seu Gerente de Conta para obter um domínio encaminhado para você.

Exemplos de código

curl -x vm.oxylabs.io:60000 -U user1:pass1 https://ip.oxylabs.io/location
<?php
$query = curl_init('https://ip.oxylabs.io/location');
curl_setopt($query, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($query, CURLOPT_PROXY, 'http://vm.oxylabs.io:60000');
curl_setopt($query, CURLOPT_PROXYUSERPWD, "username:password");
$output = curl_exec($query);
curl_close($query);
if ($output) {
    echo $output;
}
import requests

response = requests.get(
    'https://ip.oxylabs.io/location',
    proxies={'http': 'http://user1:pass1@vm.oxylabs.io:60000',
            'https': 'http://user1:pass1@vm.oxylabs.io:60000'}
)
print(response.text)
using System;
using System.Net;

class Example
{
    static void Main()
    {
        var proxy = new WebProxy
        {
            Address = new Uri($"http://vm.oxylabs.io:60000"),
            BypassProxyOnLocal = false,
            UseDefaultCredentials = false,
            Credentials = new NetworkCredential("username", "password")
        };

        var handler = new HttpClientHandler
        {
            Proxy = proxy,
        };

        HttpClient client = new HttpClient(handler);
        var task = Task.Run(async () =>
        {
            var response = await client.GetAsync("https://ip.oxylabs.io/location");
            var content = response.Content;
            var result = await content.ReadAsStringAsync();
            return result;
        });

        task.Wait();
        Console.WriteLine(task.Result);
    }
}

A rotação de proxy seleciona IPs apenas de proxies dentro dos ASNs que você selecionou durante a configuração inicial. A rotação automática não mudará para ISPs diferentes nem alterará seus ASNs que você não escolheu.

Controle de sessão usando Proxy Rotator

É possível manter o mesmo endereço IP com o Proxy Rotator. Primeiro, você precisará saber quantos proxies o seu Proxy Rotator tem. Depois, adicione o --proxy-header "Proxy-Server: sXXX" cabeçalho à sua solicitação, onde sXXX é o número do proxy, por exemplo, s5 ou s2541.

Exemplos de código

curl -x vm.oxylabs.io:60000 \
     -U user1:pass1 \
     https://ip.oxylabs.io/location \
     --proxy-header "Proxy-Server: s10"
<?php
$query = curl_init('https://ip.oxylabs.io/location');
curl_setopt($query, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($query, CURLOPT_PROXY, 'http://vm.oxylabs.io:60000');
curl_setopt($query, CURLOPT_PROXYUSERPWD, "username:password");
curl_setopt($query, CURLOPT_PROXYHEADER, [
    "Proxy-Server: s10",
]);

$output = curl_exec($query);
curl_close($query);
if ($output) {
    echo $output;
}
import requests


class ProxyAdapter(requests.adapters.HTTPAdapter):
    def proxy_headers(self, proxy):
        headers = super(ProxyAdapter, self).proxy_headers(proxy)
        headers['Proxy-Server'] = 's10'
        return headers


s = requests.Session()
s.proxies = {'http': 'http://username:password@vm.oxylabs.io:60000',
             'https': 'http://username:password@vm.oxylabs.io:60000'}
s.mount('http://', ProxyAdapter())
s.mount('https://', ProxyAdapter())
response = s.get('https://ip.oxylabs.io/location')
print(response.text)

Atualizado

Isto foi útil?