详情页标题前

阿里云对象存储OSSPython快速入门-云淘科技

详情页1

本文介绍如何快速使用OSS Python SDK完成常见操作,如创建存储空间Bucket)、上传文件(Object)、下载文件等。

操作视频

观看以下视频快速了解如何快速使用Python SDK。

创建存储空间

存储空间是OSS的全局命名空间,相当于数据的容器,可以存储若干文件。

说明

关于获取Endpoint的更多信息,请参见访问域名和数据中心。关于存储空间的命名规范的更多信息,请参见基本概念。

以下代码用于创建存储空间。

# -*- coding: utf-8 -*-
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider

# 从环境变量中获取访问凭证。运行本代码示例之前,请确保已设置环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
auth = oss2.ProviderAuth(EnvironmentVariableCredentialsProvider())
# 填写Bucket所在地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。
# yourBucketName填写存储空间名称。
bucket = oss2.Bucket(auth, 'https://oss-cn-hangzhou.aliyuncs.com', 'yourBucketName')

# 设置存储空间为私有读写权限。
bucket.create_bucket(oss2.models.BUCKET_ACL_PRIVATE)

关于创建存储空间的更多信息,请参见Python创建存储空间。

上传文件

以下代码用于通过流式上传的方式将文件上传到OSS。

# -*- coding: utf-8 -*-
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider
# 从环境变量中获取访问凭证。运行本代码示例之前,请确保已设置环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
auth = oss2.ProviderAuth(EnvironmentVariableCredentialsProvider())
# 填写Bucket所在地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。
# yourBucketName填写存储空间名称。
bucket = oss2.Bucket(auth, 'https://oss-cn-hangzhou.aliyuncs.com', 'yourBucketName')

# 上传文件到OSS。
# yourObjectName由包含文件后缀,不包含Bucket名称组成的Object完整路径,例如abc/efg/123.jpg。
# yourLocalFile由本地文件路径加文件名包括后缀组成,例如/users/local/myfile.txt。
bucket.put_object_from_file('yourObjectName', 'yourLocalFile')

下载文件

以下代码用于将指定的OSS文件下载到本地文件:

# -*- coding: utf-8 -*-
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider

# 从环境变量中获取访问凭证。运行本代码示例之前,请确保已设置环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
auth = oss2.ProviderAuth(EnvironmentVariableCredentialsProvider())
# 填写Bucket所在地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。
# yourBucketName填写存储空间名称。
bucket = oss2.Bucket(auth, 'https://oss-cn-hangzhou.aliyuncs.com', 'yourBucketName')

#下载OSS文件到本地文件。
# yourObjectName由包含文件后缀,不包含Bucket名称组成的Object完整路径,例如abc/efg/123.jpg。
# yourLocalFile由本地文件路径加文件名包括后缀组成,例如/users/local/myfile.txt。
bucket.get_object_to_file('yourObjectName', 'yourLocalFile')

列举文件

以下代码用于列举指定存储空间下的10个文件:

# -*- coding: utf-8 -*-
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider
from itertools import islice

# 从环境变量中获取访问凭证。运行本代码示例之前,请确保已设置环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
auth = oss2.ProviderAuth(EnvironmentVariableCredentialsProvider())
# 填写Bucket所在地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。
# yourBucketName填写存储空间名称。
bucket = oss2.Bucket(auth, 'https://oss-cn-hangzhou.aliyuncs.com', 'yourBucketName')

# oss2.ObjectIterator用于遍历文件。
for b in islice(oss2.ObjectIterator(bucket), 10):
    print(b.key)

删除文件

以下代码用于删除指定文件。

# -*- coding: utf-8 -*-
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider

# 从环境变量中获取访问凭证。运行本代码示例之前,请确保已设置环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
auth = oss2.ProviderAuth(EnvironmentVariableCredentialsProvider())
# 填写Bucket所在地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。
# yourBucketName填写存储空间名称。
bucket = oss2.Bucket(auth, 'https://oss-cn-hangzhou.aliyuncs.com', 'yourBucketName')

# yourObjectName表示删除OSS文件时需要指定包含文件后缀,不包含Bucket名称在内的完整路径,例如abc/efg/123.jpg。
bucket.delete_object('yourObjectName')

删除文件详情请参见管理文件中的Python删除文件。

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

转转请注明出处:https://www.yunxiaoer.com/158754.html

(0)
上一篇 2023年12月10日 上午1:26
下一篇 2023年12月10日 上午1:26
详情页2

相关推荐

  • 阿里云日志服务SLSget_external_store-云淘科技

    调用CLI命令查询指定外部数据源的详细配置。 命令格式 aliyunlog log get_external_store –project_name= –store_name= [–access-id=] [–access-key=] [–sts-token=] [–region-endpoint=] [–client-name=] [–jm…

    阿里云日志服务SLS 2023年12月10日
  • 阿里云对象存储OSSBrowser.js简单上传-云淘科技

    您可以通过简单上传(即putObject方式)将File对象、Blob数据以及OSS Buffer上传到OSS文件。简单上传时不支持使用进度函数。 前提条件 已安装OSS Browser.js SDK。具体操作,请参见Browser.js安装。 注意事项 当您使用webpack或browserify等打包工具时,请通过npm install ali-oss的…

    阿里云对象存储 2023年12月10日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 阿里云对象存储OSS数据索引(Data Indexing)-云淘科技

    数据索引是OSS对外提供的文件(Object)元数据索引能力。您可以利用Object的元数据自定义索引的条件,从而快速获取Object列表。数据索引可以帮助您更好地管理与了解数据结构,方便您后续查询、统计和管理Object。 使用场景 基于数据审计或者数据监管等原因,您可能需要从存放于OSS存储空间(Bucket)内多达上亿的海量Object中查找符合特定条…

    阿里云对象存储 2023年12月10日
  • 阿里云对象存储OSSrestore(解冻文件)-云淘科技

    访问归档存储、冷归档存储或者深度冷归档存储类型文件(Object)之前,需要通过restore命令解冻文件。 重要 本文各命令行示例均基于Linux 64位系统,其他系统请将命令开头的./ossutil64替换成对应的Binary名称。详情请参见命令行工具ossutil快速入门。 关于归档存储、冷归档存储或者深度冷归档存储类型文件的解冻状态以及费用说明,请参…

    阿里云对象存储 2023年12月10日
  • 阿里云对象存储OSS归档直读-云淘科技

    归档直读是指在对象存储OSS中,直接访问归档存储类型的文件,而无需先对其解冻。相较于解冻后读取归档存储类型的文件,归档直读的数据取回时间更短、费用更高。归档直读适用于实时读取极低频访问数据的场景。本文介绍如何开启并使用归档直读。 前提条件 已创建有地域属性的Bucket。具体操作,请参见创建存储空间。 RAM用户必须有以下权限:oss:PutBucketAr…

    阿里云对象存储 2023年12月10日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。