Converter curl para Python

O curl2code converte instantaneamente qualquer comando curl em código Python limpo usando a popular biblioteca requests. A conversão é executada inteiramente no seu navegador via WebAssembly — seus dados nunca saem do seu dispositivo. Se você trabalha com TypeScript no frontend, confira nosso conversor de curl para TypeScript. Para JavaScript no lado do servidor, veja curl para Node.js. Abaixo você encontrará exemplos práticos cobrindo os cenários HTTP mais comuns.

Como copiar o curl do seu navegador

  1. 1

    Abra o DevTools

    Pressione F12 ou Ctrl+Shift+I para abrir as ferramentas de desenvolvedor do seu navegador.

  2. 2

    Vá para a aba Network

    Clique na aba Network e realize a ação que dispara a requisição HTTP.

  3. 3

    Copiar como cURL

    Clique com o botão direito na requisição → CopyCopy as cURL. Depois cole acima.

Perguntas Frequentes

O que é o Python Requests?

O Python Requests é a biblioteca de cliente HTTP mais popular para Python, com mais de 50.000 estrelas no GitHub. Ele fornece uma API elegante e fluida (Pythonic) para fazer requisições HTTP, lidar com sessões, cookies e autenticação. Suporta parsing de JSON nativamente, pooling de conexões e decodificação automática de conteúdo. Instale-o com pip install requests. É a biblioteca padrão usada pelo curl2code para conversões em Python.

Requests vs http.client — qual devo usar?

Requests é recomendado para a maioria dos casos de uso devido à sua API simples, parsing automático de JSON e suporte a sessões integrado. http.client faz parte da biblioteca padrão do Python e não requer instalação, sendo adequado para ambientes mínimos. Para simplicidade semelhante em outras linguagens, veja nosso conversor de curl para Ruby ou conversor de curl para Go.

Como lidar com autenticação no Python Requests?

Passe um cabeçalho Authorization com seu token para autenticação Bearer, ou use requests.auth.HTTPBasicAuth(user, pass) para autenticação Basic. O curl2code detecta automaticamente padrões de autenticação, incluindo -u user:pass e -H 'Authorization: Bearer ...'.

Como enviar dados de formulário multipart com Python?

Use o parâmetro files: requests.post(url, files={ 'file': open('doc.pdf', 'rb') }). Para campos de formulário adicionais, use data simultaneamente. O curl2code lida com as flags -F automaticamente.

Como lidar com erros e tentativas (retries)?

Use response.raise_for_status() para exceções em códigos 4xx/5xx. Envolva em um bloco try/except capturando requests.exceptions.RequestException. Para tentativas, use urllib3.util.Retry com um adaptador de Session.

Como fazer requisições HTTP assíncronas em Python?

O requests é síncrono. Para HTTP assíncrono, use aiohttp ou httpx (que oferece APIs síncronas e assíncronas com interface compatível com requests). Para cenários de alta concorrência, clientes assíncronos fornecem um throughput significativamente melhor.

Como definir timeouts e pooling de conexões?

Sempre defina timeouts: requests.get(url, timeout=(3.05, 27)). Para pooling de conexões, use requests.Session(), que reutiliza conexões TCP. As opções --connect-timeout e --max-time do curl mapeiam para estes parâmetros.

Como configurar um proxy com Python Requests?

Passe um dicionário proxies: { 'https': 'http://proxy:8080' }. Para SOCKS, instale requests[socks]. Também respeita as variáveis de ambiente HTTP_PROXY / HTTPS_PROXY. O curl2code converte -x e --proxy automaticamente.

Como enviar uma requisição POST com corpo JSON em Python?

Converta um comando curl POST como curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL para Python usando o curl2code. O código gerado usa requests.post(url, json={'key': 'value'}). O curl2code detecta automaticamente as flags -d/--data com conteúdo JSON e define o cabeçalho Content-Type apropriado no código do Requests.

Como adicionar autorização com token Bearer em Python?

Passe curl -H "Authorization: Bearer YOUR_TOKEN" URL para o curl2code e ele gerará o código do Requests com o cabeçalho de autenticação: headers={'Authorization': 'Bearer YOUR_TOKEN'}. O curl2code detecta tokens Bearer tanto de flags -H "Authorization: Bearer ..." quanto de --oauth2-bearer. Para Basic auth, use -u user:pass.

Como definir o cabeçalho Content-Type em Python?

O curl2code converte curl -H "Content-Type: application/json" URL para o código do Requests com o cabeçalho correto: headers={'Content-Type': 'application/json'}. Para dados -d, o curl define por padrão application/x-www-form-urlencoded; para uploads de formulário com -F, ele usa multipart/form-data. O curl2code mapeia cada um para a API correta do Requests.

Como converter um comando curl para código Python?

Cole seu comando curl no curl2code e selecione Python. A ferramenta analisa todas as flags — -X (método), -H (cabeçalhos), -d (dados), -u (autenticação), -F (formulário), cookies e muito mais — e gera um código limpo usando Python Requests. A conversão é executada localmente no seu navegador via WebAssembly, para que suas chaves de API e dados permaneçam privados. Você também pode escolher http.client como uma biblioteca alternativa.

Links úteis

Guias do curl

Converter curl para outras linguagens