Я действительно хочу отправить данные mutlipart в веб-приложение с помощью python. Я использую этот полезный полезный модуль Requests (http://requests-fr.readthedocs.org/en/latest/).Опубликовать многостраничные данные в python с модулем Requests
Мне нужно отправить аудиофайл (сохраненный в локальном режиме в системе) и 2 параметра (GPS-координаты для информации).
У меня уже есть возможность сделать это с помощью команды curl, но я ищу реализацию python запросов. Это локон команда:
curl -u "user:pass" -F '[email protected]' -F "latitude=42.44646" -F "longitude=8.46464" 'http://my_server_ip/web/rest/vocal' -v --digest
Это, как я пытаюсь сделать это в питона запросов:
url = "http://my_server_ip/web/rest/vocal"
files = {'audio' : open('/PATH/record.wav','rb'),'latitude':42.44646,'longitude':8.46464}
r = requests.post(url, auth=HTTPDigestAuth('user','pass'),data=files)
r.json
print r.json
На данный момент, единственный ответ, я получаю 500 ошибку ,
Кто-нибудь понимает, что не так? Не стесняйтесь сказать мне, если вы видите лучшее решение для этого:
Приветствую!
вы пробовали '... файлы = файлов) 'в вашем сообщении вместо' ... data = files) '? – schwobaseggl
Да! с файлами = файлы, я получаю ошибку 400 –
http://requests.readthedocs.org/en/latest/user/quickstart/#post-a-multipart-encoded-file Я предполагаю, что 'широта',' долгота' не файлы, поэтому они не должны быть ключами в 'files'' dict' ... – schwobaseggl