конвертировать curl в python запросов (pisignage API) - PullRequest
0 голосов
/ 13 февраля 2020

Я пытаюсь преобразовать локон pisignage в python запросов. Curl,

curl -X POST "https://swagger.piathome.com/api/files" -H "принять: application / json" -H "x-access-token: login_session_token" -H "Тип контента: multipart / form-data" -F "Загрузить file=@test.jpg;type=image / jpeg"

Мой код:

import requests

files = {'Upload file': open('test.jpg', 'rb'), 'type': 'image/jpeg'}
headers = {'Content-type': 'multipart/form-data', 'accept': 'application/json', 'x-access-token': 'login_session_token'}

file_response = requests.post(
    'https://swagger.piathome.com/api/files',
    files=files,
    headers=headers
)
print(file_response)

Возвращает 404. Я попытался uncurl, код:

import uncurl

u = uncurl.parse('curl -X POST "https://swagger.piathome.com/api/files" -H "accept: application/json" -H "x-access-token: login_session_token" -H "Content-Type: multipart/form-data" -F "Upload file=test.jpg;type=image/jpeg"')

print(u)

Вывод,

ошибка: нераспознанные аргументы: -F Загрузить файл = test.jpg; тип = image / jpeg

1 Ответ

0 голосов
/ 13 февраля 2020

Попробуйте это

  import requests

    headers = {
        'accept': 'application/json',
        'x-access-token': 'login_session_token',
        'Content-Type': 'multipart/form-data',
    }

    files = {
        'Upload file': (None, 'test.jpg;type'),
    }

    response = requests.post('https://swagger.piathome.com/api/files', headers=headers, files=files)

ссылка для анализа curl для запроса python

...