腾讯qcloud cos v4.0的python sdk

qcloud_cos_v4的Python项目详细描述


https://travis-ci.org/tencentyun/cos-python-sdk-v4.svg?branch=masterhttps://badge.fury.io/py/qcloud_cos_v4.pnghttps://readthedocs.org/projects/cossdkv4/badge/?version=latest

介绍

腾讯云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# 替换为用户的appidsecret_id=u'xxxxxxxx'# 替换为用户的secret_idsecret_key=u'xxxxxxx'# 替换为用户的secret_keyregion_info="sh"#           # 替换为用户的region,目前可以为 sh/gz/tj/sgp,分别对应于上海,广州,天津,新加坡园区cos_client=CosClient(appid,secret_id,secret_key,region=region_info)# 设置要操作的bucketbucket=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. 上传文件(覆盖文件)# 2.1上传本地文件,将本地的local_file_2.txt上传到bucket的根分区下,覆盖已上传的sample_file.txtrequest=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)# 2.2从内存上传文件request=UploadFileFromBufferRequest(bucket,u'/sample_file.txt',data)request.set_insert_only(0)# 设置允许覆盖upload_file_ret=cos_client.upload_file_from_buffer(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'this is demo file')# 设置文件biz_attr属性,不支持中文request.set_authority(u'eWRPrivate')# 设置文件的权限request.set_cache_control(u'cache_xxx')# 设置Cache-Controlrequest.set_content_type(u'application/text')# 设置Content-Typerequest.set_content_disposition(u'ccccxxx.txt')# 设置Content-Dispositionrequest.set_content_language(u'english')# 设置Content-Languagerequest.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.txtrequest=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)# 8. 下载文件request=DownloadFileRequest(bucket,u'/sample_file_move.txt')del_ret=cos_client.download_file(request)print'del file ret:',repr(del_ret)# 9. 下载文件到内存request=DownloadObjectRequest(bucket,u'/sample_file_move.txt')fp=cos_client.download_object(request)fp.read()############################################################################# 目录操作                                                                 ############################################################################## 1. 生成目录, 目录名为sample_folderrequest=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'this is a test folder')# biz_attr不支持中文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)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java在地图上获取路线点   java将ArrayList传递给方法?   java如何将类从wsdl2java创建的默认包排序到不同的包中?   在Android中使用PDFTextStream,获得Java。awt。geom。generalpath(NoClassDefFound异常)   安卓上的java蓝牙   在Eclipse中搜索具有特定导入的Java文件   使用OkHTTP客户端和HttpsURLConnection的java不支持https获取请求方法“GET”   java LiquiBase 2.0.5中是否有将更改日志sql输出到文件的方法?   Java:获取对象所属的最低级别类   在Java中创建字符串路径以读取文本文件   java以自定义格式将当前日期保存到oracle Db   java RESTEasy不会将我的SpringBean映射到定制SpringContextLoader   java Spring验证程序未向客户端提供消息   java如何在ant构建中添加(addmodules jdk.incubator.vector)模块