Конвертиране на curl в R

curl2code конвертира curl команди в R код, използвайки пакета httr. Конвертирането се извършва във вашия браузър чрез WebAssembly за пълна поверителност. За Python вижте нашия curl към Python конвертор. За Julia вижте curl към Julia. По-долу са дадени практически R примери.

Как да копирате curl от вашия браузър

  1. 1

    Отворете DevTools

    Натиснете F12 или Ctrl+Shift+I, за да отворите инструментите за разработчици на вашия браузър.

  2. 2

    Отидете в раздела Network

    Кликнете върху раздела Network и извършете действието, което задейства HTTP заявката.

  3. 3

    Копирайте като cURL

    Кликнете с десния бутон върху заявката → CopyCopy as cURL. След това я поставете по-горе.

Често задавани въпроси

Какво е R httr?

httr е най-популярният пакет за HTTP клиент за R, предназначен за взаимодействия с уеб API. Той предоставя функции като GET(), POST(), PUT() с автоматична обработка на типа съдържание и поддръжка на OAuth. Инсталирайте с install.packages("httr"). curl2code също поддържа httr2, наследникът от следващо поколение.

httr срещу httr2 срещу curl пакет — кое да използвам?

httr е стабилен и широко използван — повечето уроци за R го използват. httr2 е модерният заместник със синтаксис с конвейери (pipes), вградени повторни опити и ограничаване на честотата. Пакетът curl е обвивка на libcurl от ниско ниво. Използвайте httr2 за нови проекти, httr за съвместимост. За подобни работни процеси в науката за данни вижте curl към Python или curl към Julia.

Как да се справя с автентикацията в R?

За Bearer: GET(url, add_headers(Authorization = paste("Bearer", token))). За Basic автентикация: GET(url, authenticate(user, pass)). httr също поддържа OAuth 1.0 и 2.0 чрез oauth1.0_token() и oauth2.0_token(). curl2code конвертира -u и флаговете за хедъри в синтаксис на R.

Как да изпратя multipart form данни в R?

Използвайте POST(url, body = list(file = upload_file("doc.pdf"), desc = "My file"), encode = "multipart"). httr автоматично обработва multipart границите и Content-Type. За JSON тела използвайте encode = "json". curl2code конвертира флаговете -F в multipart синтаксиса на httr.

Как да обработвам HTTP грешки в R?

Използвайте stop_for_status(response), за да хвърлите грешка при статус, различен от 2xx, warn_for_status() за предупреждения или message_for_status() за съобщения. Проверете статуса с status_code(response). Обвийте в tryCatch() за програмна обработка на грешки. httr2 използва req_error() за конфигурируемо поведение при грешки.

Как да парсвам JSON отговори в R?

Използвайте content(response, "parsed") за автоматично парсване от JSON към списък или content(response, "text") с jsonlite::fromJSON() за повече контрол. jsonlite конвертира JSON в R data frames, списъци и вектори. За конвейери за анализ на данни, прехвърлете директно към tibble или dplyr.

Как да задам таймаути в R?

Използвайте GET(url, timeout(30)) за 30-секунден таймаут. httr2 използва req_timeout(req, 30). За повторни опити в httr2: req_retry(req, max_tries = 3, backoff = ~ 2). httr няма вградени повторни опити — използвайте цикъл с tryCatch(). Те съответстват на опцията --max-time на curl.

Как да използвам прокси в R?

Използвайте GET(url, use_proxy("proxy", 8080, username, password)). httr обвива опциите за прокси на libcurl. Също така уважава променливите на средата http_proxy и https_proxy. За SOCKS проксита укажете схемата: use_proxy("socks5://proxy:1080"). curl2code конвертира флаговете -x в прокси конфигурация на R.

Как се изпраща POST заявка с JSON тяло в R?

Конвертирайте curl POST команда като curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL в R чрез curl2code. Генерираният код използва POST(url, body = data, encode = 'json'). curl2code автоматично разпознава -d/--data флагове с JSON съдържание и задава съответната Content-Type заглавна част в httr кода.

Как се добавя Bearer token оторизация в R?

Подайте curl -H "Authorization: Bearer YOUR_TOKEN" URL на curl2code и той ще генерира httr код със заглавна част за оторизация: add_headers(Authorization = 'Bearer YOUR_TOKEN'). curl2code разпознава Bearer токени както от -H "Authorization: Bearer ...", така и от --oauth2-bearer флагове. За Basic auth използвайте -u user:pass.

Как се задава Content-Type заглавна част в R?

curl2code конвертира curl -H "Content-Type: application/json" URL в httr код с правилната заглавна част: content_type_json(). За -d данни, curl използва по подразбиране application/x-www-form-urlencoded; за -F качване на формуляри, използва multipart/form-data. curl2code свързва всеки от тях с правилния httr API.

Полезни връзки

Ръководства за curl

Конвертиране на curl в други езици