当我尝试将图像上传到imgur api时出现以下错误。
b'{"data":{"error":"Invalid URL (<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=1600x6495 at 0x10E726050>)","request":"\\/3\\/upload","method":"POST"},"success":false,"status":400}'
我的代码如下。客户ID已删除。
#!/usr/bin/env python3
import io
from PIL import Image
import requests
import json
import base64
url = "http://www.tallheights.com/wp-content/uploads/2016/06/background_purple.jpg"
r = requests.get(url)
image = Image.open(io.BytesIO(r.content))
imagestring = str(image)
url = 'https://api.imgur.com/3/upload'
body = {'type':'file','image': imagestring , 'name' : 'abc.jpeg'}
headers = {'Authorization': 'Client-ID <redacted>'}
req = requests.post(url, data=body, headers=headers)
print (req.content)
我的代码在Python3中,由于两个原因,我没有使用Imgur提供的official client library。
答案 0 :(得分:1)
这有效:
__html__
答案 1 :(得分:0)
检查API文档,似乎您网址的/ upload部分已更改为/ image。
https://apidocs.imgur.com/?version=latest#c85c9dfc-7487-4de2-9ecd-66f727cf3139
(请参见右侧的“样品申请”)
但是似乎这一切都已被弃用,并且同一页面上的信息本身也矛盾。