用Python发送PIL图像请求

10

我创建了一张PIL图像,想要通过requests发送到服务器。

我的代码如下,但是我无法使它工作,因为没有报错信息。

import requests
from PIL import Image
from io import BytesIO

img = Image.new('RGB', (25, 25), color = (120, 120, 20))
byte_io = BytesIO()
img.save(byte_io, 'png')
byte_io.seek(0)

requests.post(
    url('/media/upload'),
    files={
        'files[]': (
            '1.png',
            byte_io,
            'multipart/form-data'
        )
    },
)

print files让我得到了{'files[]': ('1.png', <_io.BytesIO object at 0x105b69290>, 'multipart/form-data')},并且没有错误发生。


是 url('/media/upload') 还是 url='/media/upload'?如果是前者,你如何定义 url 函数? - Aloïs de La Comble
1个回答

9
我已经搞定了 :)
我的文件对象需要像这样:
'files[]': (
    '1.png',
    byte_io,
    'image/png'
)

这真的为我节省了数小时的工作时间。向你致敬。(◠‿◠) - sahal mulki

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接