2017-02-13 7 views
0

У меня есть функционирующий локон запрос:Conver локон с --form на запросы питона

curl --form "bio[0][email protected]/12345.jpg" --form "bio[1][email protected]/6789.jpg" --form "Verify=Verfiy" http://192.45.35.89/test.php 

, что я пытаюсь преобразовать запросов Python:

requests.post('http://192.45.35.89/test.php', data = { 
    'bio' : [ 
     ('12345.jpg', open('images/12345.jpg', 'rb'), 'image/png'), 
     ('6789.jpg', open('images/6789.jpg', 'rb'), 'image/png') 
    ], 
    'Verify' : 'Verify' 
}) 

версия питона запроса дает ошибку сервера о «файлах, которые не были найдены или недоступны»

Я правильно преобразовываю запрос на завихрение на запросы python? Любой указатель будет очень благодарен.

ответ

1

Вам нужно отправить файлы в files словаря, чтобы отправить данные в виде многотомных/form-данных, как локон делает:

requests.post('http://192.45.35.89/test.php', 
    files = { 
     'bio[0]' : ('12345.jpg', open('images/12345.jpg', 'rb'), 'image/png'), 
     'bio[1]' : ('6789.jpg', open('images/6789.jpg', 'rb'), 'image/png') 
    }, 
    data = {'Verify' : 'Verify'}) 

Ссылка: POST a Multipart-Encoded File