1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 【Python】阿里云对象存储OSS图床上传图片

【Python】阿里云对象存储OSS图床上传图片

时间:2018-08-25 05:09:19

相关推荐

【Python】阿里云对象存储OSS图床上传图片

【预先准备】

首先需要在阿里云购买「对象存储OSS」服务,假设已经开通服务

首先创建Bucket: 名称要做到全局唯一,最终图床的链接就是以这里的命名开头地域如果有特殊需求可修改其他位置存储类型一般标准存储比较合适读写权限推荐改为公共读,之后作为markdown的外链图片等比较方便,也可以上传临时文件让别人下载 获取Access Key,可以在右侧「常用入口」中找到(ps. 吐槽一句 为什么要做这么复杂,想找什么完全找不到啊…) 如果之前没有就创建一个,保存这里的AccessKey IDSecret,后面要用

安装python所需环境,强烈推荐python=3.6,否则安装oss2包可能有各种各样的问题 oss2 anaconda安装:conda install -c conda-forge oss2上传本地图片(文件)代码如下,记得把里面[ ]换成自己的就可以了

import oss2, uuidclass AliyunOss(object):def __init__(self):self.access_key_id = "[AccessKey ID]"self.access_key_secret = "[Secret]"self.auth = oss2.Auth(self.access_key_id, self.access_key_secret)self.bucket_name = "[doublez-mytest]"self.endpoint = "[oss-cn-]"self.bucket = oss2.Bucket(self.auth, self.endpoint, self.bucket_name)def put_object_from_file(self, name, file):self.bucket.put_object_from_file(name, file)return "https://{}.{}/{}".format(self.bucket_name, self.endpoint, name)aliyunoss = AliyunOss()img_url = aliyunoss.put_object_from_file("target_name.png", "img.png")

最终的图片链接大致是这个格式:https://doublez-mytest.oss-cn-/target_name.png

【一个小坑】

最开始我是在mac上通过anaconda配置的环境,但一直报错oss2找不到,最后发现问题是conda环境默认使用的还是base的python版本,要强制通过python3执行命令才可以是conda真正的版本,总是有奇奇怪怪的问题

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。