快速上手阿里雲oss SDK

使用阿里雲oss SDKpython

依賴安裝:安全

  • pip install oss2
  • pip install aliyun-python-sdk-sts
  • 版本最好是 2.7.5 或以上
  • 若是要開啓 crc64 循環冗餘校驗,須要先將 crcmod 安裝好。
  • 安裝 python-devel 執行 yum install python-devel。
  • 須要循環冗餘校驗,安裝 crcmod 執行 pip install crcmod。

獲取AccessKeyId和AccessKeySecret:

  1. 登陸阿里雲控制檯。app

  2. 將鼠標放在右上方的用戶名區域,在彈出的快捷菜單中選擇accesskeys。運維

  3. 系統彈出安全提示對話框,單擊繼續使用AccessKey。頁面顯示AccessKeyId和AccessKeySecret。ui

快速建立子帳號AccessKey:

  1. 使用主帳號登陸阿里雲控制檯。
  2. 將鼠標置於頁面右上方的帳號圖標,而後單擊accesskeys。
  3. 安全提示框中,單擊開始使用子用戶AccessKey。
  4. 填寫RAM用戶名,而後單擊下一步。
  5. 給RAM用戶授予相關權限,例如AliyunOSSFullAccess將給RAM用戶授予OSS的管理權限。單擊開始建立。
  6. 完成手機驗證後,單擊肯定。
  7. 查看AccessKeyId和AccessKeySecret。而後單擊下載AccessKey,下載AccessKey信息。

 

總體使用方法:阿里雲

# -*- 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)

 

建立存儲空間:

# -*- coding: utf-8 -*-
import oss2

# 阿里雲主帳號AccessKey擁有全部API的訪問權限,風險很高。強烈建議您建立並使用RAM帳號進行API訪問或平常運維,請登陸 https://ram.console.aliyun.com 建立RAM帳號。
auth = oss2.Auth('<yourAccessKeyId>', '<yourAccessKeySecret>')
# Endpoint以杭州爲例,其它Region請按實際狀況填寫。
bucket = oss2.Bucket(auth, 'http://oss-cn-hangzhou.aliyuncs.com', '<yourBucketName>')

# 設置存儲空間爲私有讀寫權限。
bucket.create_bucket(oss2.models.BUCKET_ACL_PRIVATE)

  

上傳文件:

# -*- coding: utf-8 -*-
import oss2

# 阿里雲主帳號AccessKey擁有全部API的訪問權限,風險很高。強烈建議您建立並使用RAM帳號進行API訪問或平常運維,請登陸 https://ram.console.aliyun.com 建立RAM帳號。
auth = oss2.Auth('<yourAccessKeyId>', '<yourAccessKeySecret>')
# Endpoint以杭州爲例,其它Region請按實際狀況填寫。
bucket = oss2.Bucket(auth, 'http://oss-cn-hangzhou.aliyuncs.com', '<yourBucketName>')

# <yourLocalFile>由本地文件路徑加文件名包括後綴組成,例如/users/local/myfile.txt
bucket.put_object_from_file('<yourObjectName>', '<yourLocalFile>')

  

下載文件:

# -*- coding: utf-8 -*-
import oss2

# 阿里雲主帳號AccessKey擁有全部API的訪問權限,風險很高。強烈建議您建立並使用RAM帳號進行API訪問或平常運維,請登陸 https://ram.console.aliyun.com 建立RAM帳號。
auth = oss2.Auth('<yourAccessKeyId>', '<yourAccessKeySecret>')
# Endpoint以杭州爲例,其它Region請按實際狀況填寫。
bucket = oss2.Bucket(auth, 'http://oss-cn-hangzhou.aliyuncs.com', '<yourBucketName>')

# <yourLocalFile>由本地文件路徑加文件名包括後綴組成,例如/users/local/myfile.txt
bucket.get_object_to_file('<yourObjectName>', '<yourLocalFile>')

  

列舉文件:

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

# 阿里雲主帳號AccessKey擁有全部API的訪問權限,風險很高。強烈建議您建立並使用RAM帳號進行API訪問或平常運維,請登陸 https://ram.console.aliyun.com 建立RAM帳號。
auth = oss2.Auth('<yourAccessKeyId>', '<yourAccessKeySecret>')
# Endpoint以杭州爲例,其它Region請按實際狀況填寫。
bucket = oss2.Bucket(auth, 'http://oss-cn-hangzhou.aliyuncs.com', '<yourBucketName>')

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

  

刪除文件:

# -*- coding: utf-8 -*-
import oss2

# 阿里雲主帳號AccessKey擁有全部API的訪問權限,風險很高。強烈建議您建立並使用RAM帳號進行API訪問或平常運維,請登陸 https://ram.console.aliyun.com 建立RAM帳號。
auth = oss2.Auth('<yourAccessKeyId>', '<yourAccessKeySecret>')
# Endpoint以杭州爲例,其它Region請按實際狀況填寫。
bucket = oss2.Bucket(auth, 'http://oss-cn-hangzhou.aliyuncs.com', '<yourBucketName>')

bucket.delete_object('<yourObjectName>')
相關文章
相關標籤/搜索