---
title: "Como configurar um proxy no AIOHTTP"
slug: proxy-in-aiohttp
date: 2024-02-07T10:38:02+00:00
modified: 2026-04-20T11:24:54+00:00
permalink: https://brightdata.com.br/blog/procedimentos/proxy-in-aiohttp
type: blog
---

[ Blog ](https://brightdata.com.br/blog "Blog") / [procedimentos](https://brightdata.com.br/blog/procedimentos)







 [procedimentos](https://brightdata.com.br/blog/procedimentos)

# Como configurar um proxy no AIOHTTP

Aprenda a configurar um proxy no AIOHTTP neste guia passo a passo

 13 min de leitura





 [ ![Antonello Zanini](https://media.brightdata.com.br/2022/12/Antonello-Zanini-2-50x50.jpg) ](https://brightdata.com/blog/authors/antonello-zanini)

 [Antonello Zanini

Technical Writer

 ](https://brightdata.com/blog/authors/antonello-zanini)





 ![How to Set Proxy in AIOHTTP](https://media.brightdata.com.br/2024/02/How-to-Set-Proxy-in-AIOHTTP.svg)





Ao final deste guia de integração de proxy do AIOHTTP, você saberá:

- O que é AIOHTTP.
- Por que você deveria usar um proxy.
- Como configurar um proxy HTTP, HTTPS ou SOCKS no AIOHTTP.
- Como lidar com autenticação de proxy, erros de certificado SSL, rotação de IP e muito mais.

## O que é AIOHTTP?

[AIOHTTP](https://docs.aiohttp.org/en/stable/index.html) é um popular framework de cliente/servidor HTTP assíncrono em Python, de código aberto. Suas principais características são:

- Suporte para ambos os lados do protocolo HTTP, cliente e servidor.
- Suporte para web sockets tanto do lado do cliente quanto do servidor.
- Fornece middleware e roteamento modular para um servidor web.

O que importa neste tutorial é sua capacidade de atuar como um cliente HTTP para realizar requisições HTTP usando o asyncio. O AIOHTTP é especialmente adequado para construir scripts que precisam lidar com múltiplas requisições simultâneas de forma eficiente.

Até o momento em que este texto foi escrito, o AIOHTTP tem mais de [14 mil estrelas no GitHub](https://github.com/aio-libs/aiohttp).

## Por que você precisa de um proxy AIOHTTP?

Um bom motivo para usar um proxy no AIOHTTP é proteger sua identidade on-line. Ao rotear sua requisição para um [servidor proxy](/blog/proxy-101/what-is-proxy-server), você pode ocultar seu IP e localização, fazendo com que o site de destino acredite que sua requisição vem do servidor proxy e não de você. Isso significa que será mais difícil identificar e rastrear você, adicionando confidencialidade às suas operações on-line e evitando banimentos de IP e restrições geográficas.

Observe que você pode obter o mesmo resultado com `requisições`, conforme abordado em nosso [`tutorial de integração de proxy com requisições`](https://brightdata.com.br/blog/proxies-101/proxy-with-python-requests).

## Configurando um proxy no AIOHTTP

Nesta seção passo a passo, você aprenderá como configurar um proxy HTTP, HTTPS ou SOCKS no AIOHTTP.

### Pré-requisitos do AIOHTTP

Aqui, vamos supor que você já tenha o Python instalado em sua máquina e um projeto Python com um ambiente virtual configurado. Instale o AIOHTTP e suas dependências recomendadas com o seguinte comando:

```none
pip install aiohttp[speedups]
```

Isso adicionará o `<a href="https://pypi.org/project/aiohttp/" rel="noreferrer noopener nofollow" target="_blank">aiohttp</a>` às dependências do seu projeto.

Abra seu arquivo de script Python e adicione a importação do `aiohttp`:

```none
import aiohttp
```

Para fazer o aiohttp funcionar com a sintaxe `async/await`, você precisará usar o `asyncio`. Então importe essa biblioteca também e configure uma função básica `async main()`:

```none

import aiohttp
import aiohttp

import asyncio

async def main():
  # aiohttp logic...

asyncio.run(main())
```

Perfeito! Você está pronto para escrever a lógica de integração do proxy AIOHTTP!

### Pré-requisitos para o proxy

Antes de ver como integrar um proxy no AIOHTTP, você precisa entender como é uma URL de proxy.

Esse é o formato do URL necessário para se conectar a um servidor proxy no AIOHTTP:

```none
<PROTOCOL>://[<USERNAME>:<PASSWORD>@]<HOST>[:<PORT>]
```

Em detalhes, isso consiste em:

- `<protocol></protocol>`: `http` para proxies HTTP, `https` para proxies HTTPS e `socks`, `socks4`, ou [`socks5` para proxies](https://brightdata.com.br/solutions/socks5-proxies) nos diferentes protocolos SOCKS.
- `<host></host>`: o IP do servidor proxy ou de todo o seu domínio (por exemplo, `proxydomain.com`).
- `<port></port>`: a porta que o servidor proxy está ouvindo.
- `<username></username>`: o nome de usuário opcional para autenticar a conexão proxy.
- `<password></password>`: a senha opcional para autenticar a conexão proxy.

Observe que `<protocol></protocol>` e `<host></host>` são as únicas partes obrigatórias do URL. A seção `<port></port>` é opcional, mas normalmente você precisa especificá-la. Por fim, a seção de credenciais `<username>:<password></password></username>` só é necessária ao lidar com proxies autenticados.

Se você não tiver o URL de um servidor proxy, pode obter um online gratuitamente. Ao mesmo tempo, tenha em mente que **os proxies gratuitos são pouco confiáveis, consomem muitos dados, são inconsistentes, propensos a erros e duvidosos. Você pode usá-los apenas para fins de aprendizado**. Na produção, você precisará de um proxy premium confiável de um provedor de alto nível como a Bright Data.

Posteriormente neste artigo, você verá como obter um proxy Bright Data e usá-lo no AIOHTTP.

### Integração de Proxy HTTP

Conforme mencionado na documentação, o AIOHTTP oferece suporte à integração de proxy HTTP. Suponha que esta seja a URL do seu proxy HTTP:

```none
http://190.6.23.219:999
```

Você pode especificá-lo em sua solicitação do AIOHTTP usando a opção proxy conforme abaixo:

```none

async with aiohttp.ClientSession() as session:
    async with session.get(
        'https://example.com',
        proxy='http://190.6.23.219:999'
    ) as response:
        print(response.status)
```

Agora, o AIOHTTP roteará a requisição GET por meio da URL do proxy passada como argumento `proxy` para a função `get()`.

Lembre-se de que você pode usar um [proxy HTTP](https://brightdata.com.br/solutions/https-proxies) para tráfego HTTP e HTTPS.

### Integração de Proxy HTTPS

Quando se trata de proxy HTTPS, as coisas se tornam um pouco mais complexas. Conforme declarado na documentação do AIOHTTP:

> “No Python 3.10, o suporte para TLS em TLS está desativado para os transportes que o `<a href="https://docs.python.org/3/library/asyncio.html#module-asyncio">asyncio usa</a>`. Se uma versão posterior do Python (digamos, v3.11) alterar um atributo, ele funcionará™.
>
> O aiohttp v3.8 e superior está pronto para isso acontecer e possui código pronto que suporta TLS em TLS, possibilitando enviar requisições HTTPS através de túneis de proxy HTTPS.”

Em outras palavras, se você quiser usar proxies HTTPS no AIOHTTP, você precisará atualizar o Python para a versão 3.11 e o `aiohttp` para a versão 3.8 ou superior. A abordagem para a integração do proxy HTTPS no AIOHTTP permanece a mesma vista acima. O único aspecto que muda é que o protocolo proxy será `https` e não mais `http`.

### Integração de Proxy SOCKS

O AIOHTTP não oferece suporte a proxy SOCKS prontos para uso. Se você precisar usar um proxy SOCKS no AIOHTTP, você precisará instalar o `aiohttp-socks`:

```none
pip install aiohttp_socks
```

Esta biblioteca usa `python-socks` para estender o AIOHTTP com suporte para SOCKS4(a) e SOCKS5(h).

Considere isso como o URL do seu proxy SOCKS:

```none
socks5://98.175.31.195:4145
```

Use-o no AIOHTTP da seguinte forma:

```none

# initialize a SOCKS proxy connector
connector = ProxyConnector.from_url('socks5://98.175.31.195:4145')

# initialize an AIOHTTP client with the SOCKS proxy connector
async with aiohttp.ClientSession(connector=connector) as session:
    async with session.get('https://example.com') as response:
        print(response.status)
```

Agora, o AIOHTTP roteará a requisição GET por meio do proxy SOCKS especificado.

`ProxyConnector` vem do `aiohttp-socks`, então não se esqueça de importá-lo com:

```none
from aiohttp_socks import ProxyConnector
```

Internamente, o `aiohttp-socks` define um [Conector AIOHTTP](https://docs.aiohttp.org/en/stable/client_advanced.html#connectors) para ajustar as requisições e fazê-las passar pelo proxy SOCKS fornecido.

### Exemplo completo

Você acabou de aprender a usar um proxy com AIOHTTP. Vamos verificar se as abordagens acima funcionam em um exemplo completo!

Por uma questão de simplicidade, trabalharemos com um proxy HTTP, mas você pode adaptar facilmente o exemplo abaixo para HTTPS e SOCKS.

O URL de destino da requisição GET será o endpoint `/ip` do projeto HTTPBin. Essa API retorna o IP da requisição recebida. Portanto, se a integração do proxy for bem-sucedida, o endpoint deverá responder com o IP do servidor proxy e não com o seu.

Novamente, suponha que este seja o URL do seu servidor proxy HTTP:

```none
http://190.6.23.219:999
```

Integre-o ao AIOHTTP e imprima os dados retornados pelo endpoint https://httpbin.io/ip com:

```none

import aiohttp
import asyncio

async def main():
    async with aiohttp.ClientSession() as session:
        # perform a GET request through an HTTP proxy
        async with session.get(
          'https://httpbin.io/ip',
          proxy='http://190.6.23.219:999'
        ) as response:
            # extract the response data and print it
            json = await response.json()
            print(json)

asyncio.run(main())
```

Execute este script e você deverá obter:

```none

{
  'origin': '190.6.23.219'
}
```

E pronto! Esse é exatamente o IP do servidor proxy, o que significa que a integração do proxy AIOHTTP funciona perfeitamente.

**Observação**: os servidores proxy têm vida curta. No momento em que você ler este tutorial, o proxy selecionado não funcionará mais e o script acima falhará. Para fazê-lo funcionar, substitua o proxy HTTP por um novo e funcional.

## Proxy AIOHTTP: casos de uso avançados

Você conhece os fundamentos da integração de proxy AIOHTTP, mas e quanto às técnicas mais complexas? Saiba mais nesta seção!

### Proxies globais por meio de variáveis de ambiente

O AIOHTTP suporta duas maneiras de determinar qual proxy usar:

1. Ele usa o URL do proxy passado para o argumento do proxy.
2. Se `trust_env` estiver definido como `True`, ele lerá as variáveis de ambiente `HTTP_PROXY` e `<a href="https://brightdata.com.br/solutions/https-proxies">HTTPS_PROXY</a>`.

Portanto, você pode configurar um proxy globalmente no AIOHTTP definindo os envs abaixo:

- `HTTP_PROXY`: o URL do servidor proxy a ser usado para requisições HTTP.
- `HTTPS_PROXY`: o URL do servidor proxy a ser usado para requisições HTTPS.

Por exemplo, configure no Linux ou macOS com os seguintes comandos:

```none

export HTTP_PROXY="<PROTOCOL>://[<USERNAME>:<PASSWORD>@]<HOST>[:<PORT>]"
export HTTPS_PROXY="<PROTOCOL>://[<USERNAME>:<PASSWORD>@]<HOST>[:<PORT>]"
```

Em seguida, passe `trust_env=True` para `aiohttp.ClientSession()`:

```none
async with aiohttp.ClientSession(trust_env=True) as session:
```

Agora, você pode chamar `session.get()` sem o argumento `proxy`

```none

async with aiohttp.ClientSession(trust_env=True) as session:
    async with session.get('https://example.com') as response:
        print(response.status)
```

Ótimo! O AIOHTTP usará os proxies especificados nas variáveis de ambiente para cada requisição HTTP e HTTPS.

Siga o link para saber mais, pois o mesmo mecanismo também funciona com [proxies em cURL](/blog/proxy-101/curl-with-proxies).

### Abordagens de autenticação de proxy

Tentar se conectar a um proxy autenticado sem as credenciais corretas resultará em no erro `407 Autenticação de proxy necessária`.

Suponha que a string abaixo seja o URL para se conectar a um proxy HTTP autenticado:

```none
http://admin:<a class="__cf_email__" data-cfemail="70003b45190049483e270045461c49031a09483042405e4149485e4141425e434142" href="/cdn-cgi/l/email-protection">[email protected]</a>:8928
```

Aqui, o URL simples do proxy é:

```none
http://20.198.112.312:892
```

E as credenciais de autenticação são:

- Username: `admin`
- Password: `pK5ip98NWp56l9sjy`

O AIOHTTP suporta duas maneiras de lidar com proxies autenticados:

1. Especifique as credenciais diretamente no URL do proxy:

```none

async with session.get(
  'https://example.com/',
  proxy='http://admin:<a class="__cf_email__" data-cfemail="71013a44180148493f260144471d48021b08493143415f4048495f4040435f424043" href="/cdn-cgi/l/email-protection">[email protected]</a>:8928'
) as response:
```

 2. Passe as credenciais de username e password para um objeto `aiohttp.BasicAuth()` e use na opção `proxy_auth`:

```none

proxy_auth = aiohttp.BasicAuth('admin', 'pK5ip98NWp56l9sjy')
async with session.get(
    'https://example.com/',
    proxy="http://20.198.112.312:892",
    proxy_auth=proxy_auth
) as response:
```

Incrível! A autenticação do proxy AIOHTTP não é mais um segredo.

### Evite erros no certificado SSL

Ao configurar um proxy no AIOHTTP, suas requisições podem falhar devido ao seguinte erro:

```none
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate in certificate chain
```

Para evitar esses problemas com o certificado SSL, [desative a verificação SSL com `ssl=False`](https://docs.aiohttp.org/en/stable/client_advanced.html#ssl-control-for-tcp-sockets):

```none

async with aiohttp.ClientSession() as session:
    async with session.get(
      'https://example.com',
      proxy='http://190.6.23.219:999',
      ssl=False # turn of SSL certificate verification
    ) as response:
        print(response.status)
```

Os erros de verificação de certificado SSL do AIOHTTP desaparecerão imediatamente.

### Proxies rotativos no AIOHTTP

Se você usa o mesmo servidor proxy repetidamente, existe a chance de que o site de destino bloqueie seu endereço IP. Para evitar isso, você deve garantir que sua solicitação use servidores proxy diferentes.

Veja como você pode fazer isso:

1. Preencha uma lista do Python com vários URLs de proxy.
2. Escolha aleatoriamente um URL de proxy antes de cada requisição.
3. Defina o URL do proxy escolhido no AIOHTTP.

O principal problema dessa abordagem é que ela envolve código boilerplate (códigos repetitivos). Além disso, requer acesso a um pool de servidores proxy confiáveis, o que não é gratuito. Felizmente, a Bright Data tem uma solução mais eficaz! Seus proxies rotativos mudam automaticamente os endereços IP de saída para você, estão disponíveis em 195 países, têm um tempo de atividade de rede (uptime) excepcional e garantem uma taxa de sucesso de 99,9%.

No próximo capítulo, você aprenderá como começar a usar os [proxies rotativos](https://brightdata.com.br/solutions/rotating-proxies) da Bright Data no AIOHTTP.

## Integrando o AIOHTTP com um Proxy da Bright Data

A Bright Data controla os melhores servidores proxy do mundo, atendendo a empresas da lista Fortune 500 e a mais de 20.000 clientes. Sua rede mundial de proxies envolve:

- [Proxies de data centers](https://brightdata.com.br/proxy-types/datacenter-proxies) — mais de 770.000 IPs de data centers.
- [Proxies residenciais](https://brightdata.com.br/proxy-types/residential-proxies) — mais de 400M+ monthly de IPs residenciais em mais de 195 países.
- [Proxies de provedores de internet (ISP)](https://brightdata.com.br/proxy-types/isp-proxies) — mais de 700.000 IPs de provedores.

Essa é uma das maiores e mais confiáveis redes proxy do mundo!

Siga as etapas abaixo e aprenda a usar os proxies da Bright Data no AIOHTTP.

Se você já tem uma conta, faça login no Bright Data. Caso contrário, crie uma conta gratuitamente. Você terá acesso ao seguinte painel de usuário:

![](https://media.brightdata.com.br/2024/02/BD-dashboard.png)

Clique no botão “Exibir produtos de proxy” conforme abaixo:

![visualizar produtos de proxy](https://media.brightdata.com.br/2024/02/view-proxy-products.png)

Você será redirecionado para a página “Infraestrutura de proxies e scraping”:

![](https://media.brightdata.com.br/2024/02/scraping-and-infra.png)

Role para baixo, encontre o cartão “Proxies residenciais” e clique no botão “Começar”:

![proxy residencial](https://media.brightdata.com.br/2024/02/resi-proxy.png)

Você acessará o painel de configuração de proxy residencial. Siga o assistente guiado e configure o serviço de proxy de acordo com suas necessidades. Se você tiver alguma dúvida sobre como configurar o proxy, sinta-se à vontade para entrar em contato com o suporte 24 horas por dia, 7 dias por semana.

![](https://media.brightdata.com.br/2024/02/proxy-config.png)

Vá para a guia “Parâmetros de acesso” e encontre o host, porta, nome de usuário e senha do seu proxy da seguinte forma:

![parâmetro de acesso](https://media.brightdata.com.br/2024/02/access-param.png)

Note que o campo “Host” já inclui a porta.

Isso é tudo o que você precisa para criar o URL do proxy e usá-lo no AIOHTTP. Junte todas as informações e crie uma URL com a seguinte sintaxe:

```none
<Username>:<Password>@<Host>
```

Por exemplo, nesse caso, seria:

```none
brd-customer-hl_4hgu8dwd-zone-residential:<a class="__cf_email__" data-cfemail="5208080808080808080808123020367c212722372022203d2a2b7c3b3d" href="/cdn-cgi/l/email-protection">[email protected]</a>:XXXXX
```

Ative o “Proxy ativo”, siga as últimas instruções e você estará pronto para começar!

![proxy ativo](https://media.brightdata.com.br/2024/02/active-proxy.png)

Seu trecho de código de integração do AIOHTTP com a Bright Data se parecerá com o seguinte:

```none

import aiohttp
import asyncio

async def main():
    async with aiohttp.ClientSession() as session:
        # perform a GET request through an HTTP proxy
        async with session.get(
          'https://lumtest.com/myip.json',
          proxy='http://brd-customer-hl_4hgu8dwd-zone-residential:<a class="__cf_email__" data-cfemail="99c3c3c3c3c3c3c3c3c3c3d9fbebfdb7eaece9fcebe9ebf6e1e0b7f0f6" href="/cdn-cgi/l/email-protection">[email protected]</a>:XXXXX'
        ) as response:
            # extract the response data and print it
            json = await response.json()
            print(json)

asyncio.run(main())
```

### Conclusão

Neste tutorial de integração de proxy AIOHTTP, você viu por que deveria usar proxies e como fazer isso com o `aiohttp`. Agora você sabe como configurar um proxy HTTP, HTTPS ou SOCKS no AIOHTTP, uma biblioteca popular de cliente HTTP do Python. Como provado aqui, isso requer apenas algumas linhas de código!

Graças a este guia, você também entendeu por que você nunca deve usar serviços de proxy gratuitos. Em vez disso, você deve adotar servidores proxy confiáveis de um provedor de serviços proxy confiável. O melhor provedor do mercado? Bright Data! O procedimento de integração de proxy no AIOHTTP permanece o mesmo, mas os benefícios de um proxy premium são inúmeros.



Contate-nosTeste grátis![google social icon](/wp-content/themes/brightdata/assets/images/ic_google.svg)









 Índice







Dedicated Scraper APIs &amp; No-Code Scrapers

Over 1000 scrapers for all popular domains. Simplify your web scraping.

[See pricing](/pricing/web-scraper "See pricing")

Just want data? Skip scraping.

Hundreds of ready-to-use datasets from all popular domains.

[See pricing](/pricing/datasets "See pricing")







 [ ](https://news.ycombinator.com/submitlink?t=Como+configurar+um+proxy+no+AIOHTTP&u=https://brightdata.com.br/blog/procedimentos/proxy-in-aiohttp) [ ](https://www.linkedin.com/shareArticle?mini=true&title=Como+configurar+um+proxy+no+AIOHTTP&url=https://brightdata.com.br/blog/procedimentos/proxy-in-aiohttp) [ ](http://www.reddit.com/submit?title=Como+configurar+um+proxy+no+AIOHTTP&url=https://brightdata.com.br/blog/procedimentos/proxy-in-aiohttp)







##  Você também pode estar interessado em

 [ ![Setting Proxy in Windows 11](https://media.brightdata.com.br/2023/12/Setting-Proxy-in-Windows-11.svg) ](https://brightdata.com.br/blog/procedimentos/set-up-proxy-in-windows-11 "Como configurar um Proxy no Windows 11")

 [procedimentos



 ![Antonello Zanini](https://media.brightdata.com.br/2022/12/Antonello-Zanini-2-50x50.jpg)

Antonello Zanini

Technical Writer





### Como configurar um Proxy no Windows 11

Aprenda o processo passo a passo de configurar um Proxy no Windows 11 para aumentar a privacidade e a segurança, garantindo uma experiência online perfeita e protegida.



 22-Feb-2026

 9 min de leitura

 ](https://brightdata.com.br/blog/procedimentos/set-up-proxy-in-windows-11)

 [ ![How To Set a Proxy in Superagent](https://media.brightdata.com.br/2023/11/How-To-Set-a-Proxy-in-Superagent.svg) ](https://brightdata.com.br/blog/procedimentos/superagent-proxy "Como configurar um proxy no SuperAgent")

 [procedimentos



 ![Man with beard smiling, wearing black shirt.](https://media.brightdata.com.br/2021/07/avivb-50x50.png)

Aviv Besinsky





### Como configurar um proxy no SuperAgent

Aprenda a configurar um proxy no SuperAgent neste tutorial passo a passo



 22-Nov-2023

 11 min de leitura

 ](https://brightdata.com.br/blog/procedimentos/superagent-proxy)

 [ ![Python IP rotation](https://media.brightdata.com.br/2023/09/How-to-Rotate-IPs-in-Python.svg) ](https://brightdata.com.br/blog/procedimentos/python-ip-rotation "Como Usar Proxies para Rotacionar Endereços IP em Python")

 [procedimentos



 ![](https://media.brightdata.com.br/2023/04/Sooter-Saalu-1-50x50.png)

Sooter Saalu





### Como Usar Proxies para Rotacionar Endereços IP em Python

Descubra como usar proxies em Python para rotação de IP no scraping de dados, onde encontrar proxies confiáveis e dicas para evitar bloqueios de sites.



 07-Sep-2023

 8 min de leitura

 ](https://brightdata.com.br/blog/procedimentos/python-ip-rotation)
