zoukankan      html  css  js  c++  java
  • python使用阿里云oss-sdk

    python使用阿里云oss-python-sdk

    安装

    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为该文件的访问地址

  • 相关阅读:
    git 学习
    C语言 do while 语句
    C语言 计算班级平均成绩以及不及格的人数
    C语言 加减算法
    C语言 两个日期间的天数计算
    C语言 梯形面积
    C语言 while语句
    C语言 分段函数if else语句
    C语言 乘法运算
    C语言学习,for循环
  • 原文地址:https://www.cnblogs.com/ivy-blogs/p/11635693.html
Copyright © 2011-2022 走看看