要在Python后台上传图片到七牛云并获取URL,你可以使用七牛云提供的Python SDK。以下是详细的步骤和代码示例:
首先,你需要安装七牛云的Python SDK。你可以使用pip
来安装:
pip install qiniu
在七牛云控制台中,你可以获取到Access Key
和Secret Key
。这些信息将用于认证和授权。
from qiniu import Auth, put_file, etag
import qiniu.config
# 需要填写你的 Access Key 和 Secret Key
access_key = 'your_access_key'
secret_key = 'your_secret_key'
# 构建鉴权对象
q = Auth(access_key, secret_key)
# 要上传的空间
bucket_name = 'your_bucket_name'
# 上传到七牛后保存的文件名
key = 'my-python-logo.png'
# 生成上传 Token,可以指定过期时间等
token = q.upload_token(bucket_name, key, 3600)
# 要上传文件的本地路径
localfile = './logo.png'
# 上传文件
ret, info = put_file(token, key, localfile)
print(info)
assert ret['key'] == key
assert ret['hash'] == etag(localfile)
# 获取文件的URL
base_url = 'http://your_domain/{key}'.format(key=key)
private_url = q.private_download_url(base_url, expires=3600)
print("文件URL:", private_url)
bucket_name
是你要上传的空间名,key
是文件在七牛云上的文件名,3600
是Token的有效期(秒)。base_url
。your_domain
需要替换为你七牛云空间绑定的域名。put_file
函数返回的ret
和info
分别包含上传结果和详细信息。你可以根据info.status_code
来判断上传是否成功。
if info.status_code == 200:
print("上传成功")
else:
print("上传失败")
将上述代码整合到一个完整的Python脚本中,你就可以在后台上传图片到七牛云并获取URL了。
通过以上步骤,你可以轻松地在Python后台实现图片上传到七牛云并获取URL的功能。