通过python上传文件到imgur

2023-11-22

我在使用 python requests 模块和 Imgur API 将图像上传到 Imgur 时遇到问题。

我的代码如下:

import base64
import json
import requests

from base64 import b64encode

client_id = 'my-client-id'

headers = {"Authorization": "Client-ID my-client-id"}

api_key = 'my-api-key'

url = "http://api.imgur.com/3/upload.json"

j1 = requests.post(
    url, 
    headers = headers,
    data = {
        'key': api_key, 
        'image': b64encode(open('1.jpg', 'rb').read()),
        'type': 'base64',
        'name': '1.jpg',
        'title': 'Picture no. 1'
    }
)

我通常会收到 400 响应错误。我不确定 myu client_id 是否错误,或者我的请求是否错误(我对 url 请求的经验很少),或者我使用的 Imgur API 是否错误。

我还想在提交后获取图像的网址。我不确定 API 是否有相应的命令,或者 python.requests 模块是否有一个技巧可以让我获取刚刚发布的数据(POST)。

这里回答了一个非常相似的问题,并且代码实际上有效!:将文件发送到 Imgur 时遇到问题

但是,当我使用我的客户端 ID(而不是代码中使用的应用程序 ID)时,它返回 400 错误,以及当我更改时

从: 网址=“http://api.imgur.com/2/upload.json” 到: 网址=“http://api.imgur.com/3/upload.json"


这是 v3 请求,但您没有使用 SSL,这是强制性的。尝试设置

url = "https://api.imgur.com/3/upload.json"
#          ^
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过python上传文件到imgur 的相关文章

随机推荐