Как пользоваться
- Вставьте команду curl. Можно с
curlили$ curlв начале, можно многострочную с\в конце строк. - Скопируйте код на Python и запустите его с установленной библиотекой requests (
pip install requests). - Проверьте пометку под результатом — там то, что не удалось перенести.
Как это работает
Команда разбивается на части так же, как это сделала бы оболочка, затем читается каждая опция:
- Метод берётся из -X; если его нет — POST при наличии тела или формы, HEAD с -I, иначе GET. Для стандартных методов используются
requests.get,requests.postи т. д., для остальных —requests.request. - Заголовки (-H, -A, -b, -e и -u как Basic-авторизация) попадают в словарь headers.
- Тело JSON с типом содержимого JSON становится
json_data(true → True, null → None); другие тела — строкойdata; поля -F —files. С -G данные добавляются в URL.
Пример
curl -X POST https://api.example.com/items -H 'Content-Type: application/json' -d '{"name":"x","ok":true}'
превращается в
import requests
headers = {
'Content-Type': 'application/json',
}
json_data = {
'name': 'x',
'ok': True,
}
response = requests.post('https://api.example.com/items', headers=headers, json=json_data)
print(response.status_code)
print(response.text)
Советы
- Скопированные из браузера команды содержат cookie и токены. Удалите их или вынесите в переменные окружения, прежде чем делиться кодом.
- Если API возвращает JSON, используйте response.json() вместо response.text.
- Для JavaScript ту же команду можно преобразовать конвертером cURL в fetch.