123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184 |
- Metadata-Version: 2.0
- Name: oss2
- Version: 2.13.0
- Summary: Aliyun OSS (Object Storage Service) SDK
- Home-page: http://oss.aliyun.com
- Author: UNKNOWN
- Author-email: UNKNOWN
- License: UNKNOWN
- Platform: UNKNOWN
- Classifier: Development Status :: 5 - Production/Stable
- Classifier: Intended Audience :: Developers
- Classifier: License :: OSI Approved :: MIT License
- Classifier: Operating System :: OS Independent
- Classifier: Programming Language :: Python
- Classifier: Programming Language :: Python :: 2
- Classifier: Programming Language :: Python :: 2.6
- Classifier: Programming Language :: Python :: 2.7
- Classifier: Programming Language :: Python :: 3
- Classifier: Programming Language :: Python :: 3.3
- Classifier: Programming Language :: Python :: 3.4
- Classifier: Programming Language :: Python :: 3.5
- Classifier: Programming Language :: Python :: 3.6
- Classifier: Programming Language :: Python :: 3.7
- Classifier: Programming Language :: Python :: 3.8
- Requires-Dist: aliyun-python-sdk-core (>=2.6.2)
- Requires-Dist: aliyun-python-sdk-kms (>=2.4.1)
- Requires-Dist: crcmod (>=1.7)
- Requires-Dist: pycryptodome (>=3.4.7)
- Requires-Dist: requests (!=2.9.0)
- Requires-Dist: six
- Alibaba Cloud OSS SDK for Python
- ================================
- .. image:: https://badge.fury.io/py/oss2.svg
- :target: https://badge.fury.io/py/oss2
- .. image:: https://travis-ci.org/aliyun/aliyun-oss-python-sdk.svg?branch=master
- :target: https://travis-ci.org/aliyun/aliyun-oss-python-sdk
- .. image:: https://coveralls.io/repos/github/aliyun/aliyun-oss-python-sdk/badge.svg?branch=master
- :target: https://coveralls.io/github/aliyun/aliyun-oss-python-sdk?branch=master
- `README of Chinese <https://github.com/aliyun/aliyun-oss-python-sdk/blob/master/README-CN.rst>`
- Overview
- --------
- Alibaba Cloud Object Storage Python SDK 2.x. This version is not compatible with the previous version (Version 0.x). The package name is `oss2` to avoid conflict with previous versions.
- The SDK of this version is dependent on the third-party HTTP library `requests <https://github.com/kennethreitz/requests>`_ and `crcmod`. Install the SDK following the methods below.
- Note:
- This version does not contain the `osscmd` command line tool.
- Running environment
- -------------------
- Python 2.6(not recommended),2.7,3.3(not recommended),3.4,3.5,3.6
- Note:
- Python 2.6 is not recommended because it is no longer supported by the Python core team.
- Do not use Python 3.3.0 or 3.3.1. Refer to `Python Issue 16658 <https://bugs.python.org/issue16658>`_.
- Installing
- ----------
- Install the official release version through PIP (taking Linux as an example):
- .. code-block:: bash
- $ pip install oss2
- You can also install the unzipped installer package directly:
- .. code-block:: bash
- $ sudo python setup.py install
- Getting started
- ---------------
- .. code-block:: python
- # -*- 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)
- For more examples, refer to the code under the "examples" directory.
- Handling errors
- ---------------
- The Python SDK interface will throw an exception in case of an error (see oss2.exceptions sub-module) unless otherwise specified. An example is provided below:
- .. code-block:: python
- 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))
- Setup Logging
- ---------------
- The following code can set the logging level of 'oss2'.
- .. code-block:: python
- import logging
- logging.getLogger('oss2').setLevel(logging.WARNING)
- Testing
- -------
- First set the required AccessKeyId, AccessKeySecret, endpoint and bucket information for the test through environment variables (**Do not use the bucket for the production environment**).
- Take the Linux system for example:
- .. code-block:: bash
- $ 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>
- Run the test in the following method:
- .. code-block:: bash
- $ nosetests # First install nose
- You can set environment variable to test auth v2:
- .. code-block:: bash
- $ export OSS_TEST_AUTH_VERSION=v2
- More resources
- --------------
- - `More examples <https://github.com/aliyun/aliyun-oss-python-sdk/tree/master/examples>`_.
- - `Python SDK API documentation <http://aliyun-oss-python-sdk.readthedocs.org/en/latest>`_.
- - `Official Python SDK documentation <https://help.aliyun.com/document_detail/32026.html>`_.
- Contacting us
- -------------
- - `Alibaba Cloud OSS official website <http://oss.aliyun.com>`_.
- - `Alibaba Cloud OSS official forum <http://bbs.aliyun.com>`_.
- - `Alibaba Cloud OSS official documentation center <https://help.aliyun.com/document_detail/32026.html>`_.
- - Alibaba Cloud official technical support: `Submit a ticket <https://workorder.console.aliyun.com/#/ticket/createIndex>`_.
- License
- -------
- - `MIT <https://github.com/aliyun/aliyun-oss-python-sdk/blob/master/LICENSE>`_.
|