通过API下载图像

时间:2018-02-24 23:59:06

标签: python django

我总是使用request.get方法,但现在需要通过api上传主机上的图像。我收到此错误:TypeError:必须是str,而不是InMemoryUploadedFile。我明白了,这个错误会产生什么。如何在代码中上传图片?

data = request.FILES['avatar']
api = 'http://uploads.ru/api?upload=' + data
upload_image = requests.post(api)
respons = upload_image

1 个答案:

答案 0 :(得分:0)

requests模块使用files参数将multipart个编码文件上传到网址。

将您的代码更改为:

file_data = {'filename': data}
r = requests.post(api, files=[file_data])

在尝试上传文件之前,我可能会将文件写入磁盘。所以如果出现问题你就不会失去一切。