七牛云提供了10G免费空间,对于个人博客来说空间足够,七牛官方也提供了python SDK,直接安装即可调用接口进行上传
安装七牛官方sdk
pip install qiniu
上传代码
def upload_file_qiniu(inputdata,filename=None):
from qiniu import Auth, put_data, etag
access_key = current_app.config.get('QINIU_ACCESS_KEY')
secret_key = current_app.config.get('QINIU_SECRET_KEY')
'''
:param inputdata: bytes类型的数据
:return: 文件在七牛的上传名字
'''
# 构建鉴权对象
q = Auth(access_key, secret_key)
#要上传的空间
bucket_name = 'h3blog'
#生成上传 Token,可以指定过期时间等
token = q.upload_token(bucket_name)
#如果需要对上传的图片命名,就把第二个参数改为需要的名字
ret1,ret2=put_data(token,filename,data=inputdata)
print('ret1:',ret1)
print('ret2:',ret2)
#判断是否上传成功
if ret2.status_code!=200:
raise Exception('文件上传失败')
return ret1.get('key')