Converter curl para R

O curl2code converte comandos curl para código R utilizando o pacote httr. A conversão é executada no seu navegador através de WebAssembly para total privacidade. Para Python, consulte o nosso conversor de curl para Python. Para Julia, veja curl para Julia. Abaixo encontram-se exemplos práticos de R.

Como copiar o curl do seu navegador

  1. 1

    Abrir as DevTools

    Prima F12 ou Ctrl+Shift+I para abrir as ferramentas de programador do seu navegador.

  2. 2

    Ir para o separador Network

    Clique no separador Network e realize a ação que despoleta o pedido HTTP.

  3. 3

    Copiar como cURL

    Clique com o botão direito no pedido → CopyCopy as cURL. Depois cole-o acima.

Perguntas Frequentes

O que é o R httr?

httr é o pacote de cliente HTTP mais popular para R, concebido para interações com APIs web. Fornece funções como GET(), POST(), PUT() com gestão automática de tipos de conteúdo e suporte para OAuth. Instale com install.packages("httr"). O curl2code também suporta o httr2, o sucessor de próxima geração.

httr vs httr2 vs pacote curl — qual utilizar?

O httr é estável e amplamente utilizado — a maioria dos tutoriais de R utiliza-o. O httr2 é o substituto moderno com sintaxe de pipes, repetições integradas e limitação de taxa (rate limiting). O pacote curl é um wrapper de baixo nível para a libcurl. Utilize o httr2 para novos projetos, e o httr para compatibilidade. Para fluxos de trabalho de ciência de dados semelhantes, veja curl para Python ou curl para Julia.

Como lidar com autenticação em R?

Para Bearer: GET(url, add_headers(Authorization = paste("Bearer", token))). Para autenticação Basic: GET(url, authenticate(user, pass)). O httr também suporta OAuth 1.0 e 2.0 via oauth1.0_token() e oauth2.0_token(). O curl2code converte as flags -u e de cabeçalho para a sintaxe R.

Como enviar dados de formulário multipart em R?

Utilize POST(url, body = list(file = upload_file("doc.pdf"), desc = "My file"), encode = "multipart"). O httr lida com boundaries multipart e Content-Type automaticamente. Para corpos JSON, utilize encode = "json". O curl2code converte as flags -F para a sintaxe multipart do httr.

Como lidar com erros HTTP em R?

Utilize stop_for_status(response) para lançar erro em não-2xx, warn_for_status() para avisos, ou message_for_status() para mensagens. Verifique o estado com status_code(response). Envolva em tryCatch() para tratamento programático de erros. O httr2 utiliza req_error() para comportamento de erro configurável.

Como analisar respostas JSON em R?

Utilize content(response, "parsed") para análise automática de JSON para lista, ou content(response, "text") com jsonlite::fromJSON() para mais controlo. O jsonlite converte JSON para data frames, listas e vetores de R. Para pipelines de análise de dados, envie diretamente para tibble ou dplyr.

Como definir timeouts em R?

Utilize GET(url, timeout(30)) para um timeout de 30 segundos. O httr2 utiliza req_timeout(req, 30). Para repetições no httr2: req_retry(req, max_tries = 3, backoff = ~ 2). O httr não tem repetição integrada — utilize um loop com tryCatch(). Estes mapeiam para a opção --max-time do curl.

Como utilizar um proxy em R?

Utilize GET(url, use_proxy("proxy", 8080, username, password)). O httr envolve as opções de proxy da libcurl. Também respeita as variáveis de ambiente http_proxy e https_proxy. Para proxies SOCKS, especifique o esquema: use_proxy("socks5://proxy:1080"). O curl2code converte as flags -x para a configuração de proxy do R.

Como enviar um pedido POST com um corpo JSON em R?

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

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

Passe curl -H "Authorization: Bearer YOUR_TOKEN" URL para o curl2code e este gera código httr com o cabeçalho de autenticação: add_headers(Authorization = 'Bearer YOUR_TOKEN'). O curl2code deteta tokens Bearer tanto de flags -H "Authorization: Bearer ..." como de --oauth2-bearer. Para Basic auth, utilize -u user:pass.

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

O curl2code converte curl -H "Content-Type: application/json" URL para código httr com o cabeçalho correto: content_type_json(). Para dados -d, o curl assume por defeito application/x-www-form-urlencoded; para envios de formulários -F, utiliza multipart/form-data. O curl2code mapeia cada um para a API httr correta.

Links Úteis

Guias do curl

Converter curl para Outras Linguagens