阿里云OSS(对象存储服务)SDK
项目描述
README的中文版本 <https://github.com/aliyun/aliyun-oss-python-sdk/blob/master/README-CN.rst>
概述
阿里云对象存储Python SDK 2.x。此版本与之前版本(0.x版本)不兼容。包名为< cite>oss2 cite>以避免与旧版本冲突。
此版本的SDK依赖于第三方HTTP库requests和crcmod。按照以下方法安装SDK。
注意
此版本不包含osscmd命令行工具。
运行环境
Python 2.6(不推荐),2.7,3.3(不推荐),3.4,3.5,3.6
- 注意
Python 2.6不推荐,因为它不再由Python核心团队支持。不要使用Python 3.3.0或3.3.1。请参阅Python Issue 16658。
安装
通过PIP安装官方发布版本(以Linux为例)
$ pip install oss2
您也可以直接安装未压缩的安装包
$ sudo python setup.py install
入门
# -*- coding: utf-8 -*-
import oss2
endpoint = 'http://oss-cn-hangzhou.aliyuncs.com' # Suppose that your bucket is in the Hangzhou region.
auth = oss2.Auth('<Your AccessKeyID>', '<Your AccessKeySecret>')
bucket = oss2.Bucket(auth, endpoint, '<your bucket name>')
# The object key in the bucket is story.txt
key = 'story.txt'
# Upload
bucket.put_object(key, 'Ali Baba is a happy youth.')
# Download
bucket.get_object(key).read()
# Delete
bucket.delete_object(key)
# Traverse all objects in the bucket
for object_info in oss2.ObjectIterator(bucket):
print(object_info.key)
有关更多示例,请参阅“examples”目录下的代码。
处理错误
除非另有说明,否则Python SDK接口在出现错误时将抛出异常(请参阅oss2.exceptions子模块)。以下是一个示例
try:
result = bucket.get_object(key)
print(result.read())
except oss2.exceptions.NoSuchKey as e:
print('{0} not found: http_status={1}, request_id={2}'.format(key, e.status, e.request_id))
设置日志记录
- 以下代码可以设置“oss2”的日志级别。
import logging logging.getLogger('oss2').setLevel(logging.WARNING)
测试
首先通过环境变量(请勿使用生产环境中的存储桶)设置测试所需的AccessKeyId、AccessKeySecret、endpoint和存储桶信息。以Linux系统为例
$ export OSS_TEST_ACCESS_KEY_ID=<AccessKeyId>
$ export OSS_TEST_ACCESS_KEY_SECRET=<AccessKeySecret>
$ export OSS_TEST_ENDPOINT=<endpoint>
$ export OSS_TEST_BUCKET=<bucket>
$ export OSS_TEST_STS_ID=<AccessKeyId for testing STS>
$ export OSS_TEST_STS_KEY=<AccessKeySecret for testing STS>
$ export OSS_TEST_STS_ARN=<Role ARN for testing STS>
按照以下方法运行测试
$ nosetests # First install nose
您可以为测试auth v2设置环境变量
$ export OSS_TEST_AUTH_VERSION=v2
更多资源
联系我们
阿里云官方技术支持: 提交工单。
许可证
MIT.
项目详情
关闭
oss2-2.19.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 9ca54a7921f32f32651a36f2a527bf45e03bb02f3a744877e30f1e842b0f2a0b |
|
MD5 | d22a4506b4683fe826c970caf1df7db5 |
|
BLAKE2b-256 | e2ec31baa9e9fa4a71aab9603e184db495b7cb4d1034af6bec0f11ba7cca034f |