Skip to main content

python sdk for tencent qcloud cos v4.0

Project description

https://travis-ci.org/tencentyun/cos-python-sdk-v4.svg?branch=master https://badge.fury.io/py/qcloud_cos_v4.png Documentation Status Hex.pm

介绍

腾讯云COSv4 的Python SDK, 目前可以支持Python2.6与Python2.7。

安装指南

使用pip安装

pip install -U qcloud_cos_v4

手动安装:

python setup.py install

使用方法

使用python sdk,参照sample.py

# 设置用户属性, 包括appid, secret_id和secret_key
# 这些属性可以在cos控制台获取(https://console.qcloud.com/cos)
appid = 100000                  # 替换为用户的appid
secret_id = u'xxxxxxxx'         # 替换为用户的secret_id
secret_key = u'xxxxxxx'         # 替换为用户的secret_key
region_info = "sh" #           # 替换为用户的region,目前可以为 sh/gz/tj,分别对应于上海,广州,天津园区
cos_client = CosClient(appid, secret_id, secret_key, region=region_info)

# 设置要操作的bucket
bucket = u'mybucket'

############################################################################
# 文件操作                                                                 #
############################################################################
# 1. 上传文件(默认不覆盖)
#    将本地的local_file_1.txt上传到bucket的根分区下,并命名为sample_file.txt
#    默认不覆盖, 如果cos上文件存在,则会返回错误
request = UploadFileRequest(bucket, u'/sample_file.txt', u'local_file_1.txt')
upload_file_ret = cos_client.upload_file(request)
print 'upload file ret:', repr(upload_file_ret)

# 2. 上传文件(覆盖文件)
#    将本地的local_file_2.txt上传到bucket的根分区下,覆盖已上传的sample_file.txt
request = UploadFileRequest(bucket, u'/sample_file.txt', u'local_file_2.txt')
request.set_insert_only(0)  # 设置允许覆盖
upload_file_ret = cos_client.upload_file(request)
print 'overwrite file ret:', repr(upload_file_ret)

# 3. 获取文件属性
request = StatFileRequest(bucket, u'/sample_file.txt')
stat_file_ret = cos_client.stat_file(request)
print 'stat file ret:', repr(stat_file_ret)

# 4. 更新文件属性
request = UpdateFileRequest(bucket, u'/sample_file.txt')

request.set_biz_attr(u'这是个demo文件')           # 设置文件biz_attr属性
request.set_authority(u'eWRPrivate')              # 设置文件的权限
request.set_cache_control(u'cache_xxx')           # 设置Cache-Control
request.set_content_type(u'application/text')     # 设置Content-Type
request.set_content_disposition(u'ccccxxx.txt')   # 设置Content-Disposition
request.set_content_language(u'english')          # 设置Content-Language
request.set_x_cos_meta(u'x-cos-meta-xxx', u'xxx') # 设置自定义的x-cos-meta-属性
request.set_x_cos_meta(u'x-cos-meta-yyy', u'yyy') # 设置自定义的x-cos-meta-属性

update_file_ret = cos_client.update_file(request)
print 'update file ret:', repr(update_file_ret)

# 5. 更新后再次获取文件属性
request = StatFileRequest(bucket, u'/sample_file.txt')
stat_file_ret = cos_client.stat_file(request)
print 'stat file ret:', repr(stat_file_ret)

# 6. 移动文件, 将sample_file.txt移动位sample_file_move.txt
request = MoveFileRequest(bucket, u'/sample_file.txt', u'/sample_file_move.txt')
stat_file_ret = cos_client.move_file(request)
print 'move file ret:', repr(stat_file_ret)

# 7. 删除文件
request = DelFileRequest(bucket, u'/sample_file_move.txt')
del_ret = cos_client.del_file(request)
print 'del file ret:', repr(del_ret)

############################################################################
# 目录操作                                                                 #
############################################################################
# 1. 生成目录, 目录名为sample_folder
request = CreateFolderRequest(bucket, u'/sample_folder/')
create_folder_ret = cos_client.create_folder(request)
print 'create folder ret:', create_folder_ret

# 2. 更新目录的biz_attr属性
request = UpdateFolderRequest(bucket, u'/sample_folder/', u'这是一个测试目录')
update_folder_ret = cos_client.update_folder(request)
print 'update folder ret:', repr(update_folder_ret)

# 3. 获取目录属性
request = StatFolderRequest(bucket, u'/sample_folder/')
stat_folder_ret = cos_client.stat_folder(request)
print 'stat folder ret:', repr(stat_folder_ret)

# 4. list目录, 获取目录下的成员
request = ListFolderRequest(bucket, u'/sample_folder/')
list_folder_ret = cos_client.list_folder(request)
print 'list folder ret:', repr(list_folder_ret)

# 5. 删除目录
request = DelFolderRequest(bucket, u'/sample_folder/')
delete_folder_ret = cos_client.del_folder(request)
print 'delete folder ret:', repr(delete_folder_ret)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

qcloud_cos_v4-0.0.8.tar.gz (17.5 kB view details)

Uploaded Source

qcloud_cos_v4-0.0.8.linux-x86_64.tar.gz (40.5 kB view details)

Uploaded Source

Built Distributions

qcloud_cos_v4-0.0.8-py2.6.egg (50.9 kB view details)

Uploaded Source

qcloud_cos_v4-0.0.8-py2-none-any.whl (24.3 kB view details)

Uploaded Python 2

File details

Details for the file qcloud_cos_v4-0.0.8.tar.gz.

File metadata

File hashes

Hashes for qcloud_cos_v4-0.0.8.tar.gz
Algorithm Hash digest
SHA256 9a6776e8190c15b8cc2974ec47287324d18b0562dec48be61d68f6e860af19d9
MD5 f90da873b45fc32f6a6fcaa82e7d99ac
BLAKE2b-256 c4290326777a7dbf40f85c4fb27adb32f0873a5c440943f4dace7e161e441742

See more details on using hashes here.

File details

Details for the file qcloud_cos_v4-0.0.8.linux-x86_64.tar.gz.

File metadata

File hashes

Hashes for qcloud_cos_v4-0.0.8.linux-x86_64.tar.gz
Algorithm Hash digest
SHA256 fa05eb603e2c75240418c18963c6607882ebbc0aada4315b09cee850ed1ffb48
MD5 39b6165d4128f21a2db1ce528d7778b0
BLAKE2b-256 4ec1d8b001e79cceb43a2e6d85d9883f457e4aa042abf0d0c5c8889c5a0d85c0

See more details on using hashes here.

File details

Details for the file qcloud_cos_v4-0.0.8-py2.6.egg.

File metadata

File hashes

Hashes for qcloud_cos_v4-0.0.8-py2.6.egg
Algorithm Hash digest
SHA256 e236011ff52a0348337f32c1b5ae681765f21d5ece70959e36641d6e286d372a
MD5 1557cbb80031e66055804e4fe0adce4e
BLAKE2b-256 4739bda49e673c2e7642e528ae8cf13da72c5e851649b9be14c17cbbd5791e6c

See more details on using hashes here.

File details

Details for the file qcloud_cos_v4-0.0.8-py2-none-any.whl.

File metadata

File hashes

Hashes for qcloud_cos_v4-0.0.8-py2-none-any.whl
Algorithm Hash digest
SHA256 fd200ca416f782ed2f00e5c721b26f8de5e6675d037d1aeb78ea73eadf26d18e
MD5 3cb685924415c7d2f467dd7c7a6c2167
BLAKE2b-256 8a918eae218fb05b0c42dbec28ba95eacc95b4c3d0597064b70234f22df8bd52

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page