python使用阿里云oss-sdk
- 请访问github获取源码
安装
pip install oss2
安装验证
>>> import oss2 >>> oss2.__version__ ‘‘2.8.0‘‘
上面的输出表明您已经成功安装了Python SDK 2.8.0。
创建存储空间
import oss2 auth = oss2.Auth(‘<yourAccessKeyId>‘, ‘<yourAccessKeySecret>‘) bucket = oss2.Bucket(auth, ‘<your Endpoint >‘, ‘<yourBucketName>‘) bucket.create_bucket(oss2.models.BUCKET_ACL_PRIVATE) # 设置为存储空间为私有读写权限
访问权限设置
- 私有:
BUCKET_ACL_PRIVATE
- 公共读:
BUCKET_ACL_PUBLIC_READ
- 公共读写 :
BUCKET_ACL_PUBLIC_READ_WRITE
简单上传文件
上传本地文件
import oss2 # 登录 https://ram.console.aliyun.com 创建RAM账号。 auth = oss2.Auth(‘<yourAccessKeyId>‘, ‘<yourAccessKeySecret>‘) bucket = oss2.Bucket(auth, ‘<your Endpoint >‘, ‘<yourBucketName>‘) # 必须以二进制的方式打开文件,因为需要知道文件包含的字节数。 with open(‘<yourLocalFile>‘, ‘rb‘) as fileobj: # Seek方法用于指定从第1000个字节位置开始读写。上传时会从您指定的第1000个字节位置开始上传,直到文件结束。 fileobj.seek(1000, os.SEEK_SET) # Tell方法用于返回当前位置。 current = fileobj.tell() bucket.put_object(‘<yourObjectName>‘, fileobj)
网络流上传
# -*- coding: utf-8 -*- import oss2 import requests auth = oss2.Auth(‘<yourAccessKeyId>‘, ‘<yourAccessKeySecret>‘) bucket = oss2.Bucket(auth, ‘<your Endpoint >‘, ‘<yourBucketName>‘) # requests.get返回的是一个可迭代对象(Iterable),此时Python SDK会通过Chunked Encoding方式上传。 input = requests.get(‘http://www.aliyun.com‘) bucket.put_object(‘<yourObjectName>‘, input)
put_object
返回对象的resp.response.url为该文件的访问地址
相关推荐
YENCSDN 2020-11-17
lsjweiyi 2020-11-17
houmenghu 2020-11-17
Erick 2020-11-17
HeyShHeyou 2020-11-17
以梦为马不负韶华 2020-10-20
lhtzbj 2020-11-17
夜斗不是神 2020-11-17
pythonjw 2020-11-17
dingwun 2020-11-16
lhxxhl 2020-11-16
坚持是一种品质 2020-11-16
染血白衣 2020-11-16
huavhuahua 2020-11-20
meylovezn 2020-11-20
逍遥友 2020-11-20
weiiron 2020-11-16