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 Documentation Status Hex.pm

介绍

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

安装指南

使用pip安装

pip install qcloud_cos_v4

使用easy_install安装

easy_install 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 = "shanghai" #           # 替换为用户的region,目前可以为 shanghai/guangzhou
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.5.tar.gz (17.2 kB view details)

Uploaded Source

qcloud_cos_v4-0.0.5.linux-x86_64.tar.gz (39.6 kB view details)

Uploaded Source

Built Distributions

qcloud_cos_v4-0.0.5-py2.6.egg (50.0 kB view details)

Uploaded Source

qcloud_cos_v4-0.0.5-py2-none-any.whl (24.0 kB view details)

Uploaded Python 2

File details

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

File metadata

File hashes

Hashes for qcloud_cos_v4-0.0.5.tar.gz
Algorithm Hash digest
SHA256 dc393aec762bbe096c97d65903b4ccc81a6cc50280fb23adf58b5f8b83047233
MD5 d96208bc167bb9a1482e0c4eeba67bb6
BLAKE2b-256 81cc08dcf408b1237dc12fa02b211b807ae14c40a414b5a4b8f10a65419cdd33

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for qcloud_cos_v4-0.0.5.linux-x86_64.tar.gz
Algorithm Hash digest
SHA256 14d022c1e11bda5f40654d329bc69a33845fb5bfb4b683c60d0a57468d0f6d86
MD5 60df65f904f0ca45c32df767a29b6c27
BLAKE2b-256 b86d4e48ffb39b668f7373dd66dea85d423375897d5988b310b6b53a559f105f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for qcloud_cos_v4-0.0.5-py2.6.egg
Algorithm Hash digest
SHA256 999d43784b6d665396df7019d325aa443c8db15b0abffbd0a27924745736f4a1
MD5 4020d8c6dd8d63e68b2dd64bde14de12
BLAKE2b-256 e729ac4dfab12a27f362ccc926e23efd06e2edd0f58c142f49a274509b74febd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for qcloud_cos_v4-0.0.5-py2-none-any.whl
Algorithm Hash digest
SHA256 2802091aab01b66717700abff62aee369883137af12e22e7e6adf2b89a2a7870
MD5 3f4a2906cc3e2f32ae7d1b88ee63746e
BLAKE2b-256 e701a1f8ad353f1aa5d90c7e621f6bd0b8a55c38c9cadf6a23fe9313258e85a0

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