Я выполняю простую задачу по загрузке файла с помощью библиотеки запросов Python. Я искал переполнение стека, и, похоже, ни у кого не было такой же проблемы, а именно, что файл не получен сервером:
import requests
url='http://nesssi.cacr.caltech.edu/cgi-bin/getmulticonedb_release2.cgi/post'
files={'files': open('file.txt','rb')}
values={'upload_file' : 'file.txt' , 'DB':'photcat' , 'OUT':'csv' , 'SHORT':'short'}
r=requests.post(url,files=files,data=values)
Я заполняю значение ключевого слова 'upload_file' своим именем файла, потому что, если я оставлю его пустым, появится сообщение
Error - You must select a file to upload!
И теперь я получаю
File file.txt of size bytes is uploaded successfully!
Query service results: There were 0 lines.
Что появляется, только если файл пуст. Итак, я застрял в том, как успешно отправить мой файл. Я знаю, что файл работает, потому что если я перейду на этот веб-сайт и вручную заполню форму, он вернет хороший список совпадающих объектов, что мне и нужно. Буду очень признателен за все подсказки.
Некоторые другие темы, связанные (но не отвечающие на мою проблему):