-
Notifications
You must be signed in to change notification settings - Fork 127
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1 from dt3310321/s3
S3
- Loading branch information
Showing
12 changed files
with
1,065 additions
and
166 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,17 +1,15 @@ | ||
sudo: false | ||
language: python | ||
|
||
python: | ||
- "2.6" | ||
- "2.7" | ||
|
||
install: | ||
- pip install requests | ||
- pip install nose | ||
- pip install pep8 | ||
- pip install tox | ||
|
||
script: | ||
- pep8 --max-line-length=180 | ||
- nosetests -s | ||
- tox | ||
sudo: false | ||
language: python | ||
|
||
python: | ||
- "2.6" | ||
- "2.7" | ||
|
||
install: | ||
- pip install requests | ||
- pip install nose | ||
- pip install pep8 | ||
|
||
script: | ||
- pep8 --max-line-length=180 qcloud_cos/. | ||
- nosetests -s -v |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,131 @@ | ||
Qcloud COSv5 SDK | ||
####################### | ||
|
||
介绍 | ||
_______ | ||
|
||
腾讯云COSV5Python SDK, 目前可以支持Python2.6与Python2.7。 | ||
|
||
安装指南 | ||
__________ | ||
|
||
使用pip安装 :: | ||
|
||
pip install -U cos-python-sdk-v5 | ||
|
||
|
||
手动安装:: | ||
|
||
python setup.py install | ||
|
||
使用方法 | ||
__________ | ||
|
||
使用python sdk,参照https://github.com/tencentyun/cos-python-sdk-v5/blob/master/qcloud_cos/test.py | ||
|
||
.. code:: python | ||
# 设置用户属性, 包括appid, secret_id和secret_key | ||
appid = 100000 # 替换为用户的appid | ||
secret_id = u'xxxxxxxx' # 替换为用户的secret_id | ||
secret_key = u'xxxxxxx' # 替换为用户的secret_key | ||
region = "cn-north" # 替换为用户的region,目前可以为 cn-east/cn-south/cn-north/cn-southwest,分别对应于上海,广州,天津,西南园区 | ||
config = CosConfig(Appid=appid, Region=region, Access_id=secret_id, Access_key=secret_key) #获取配置对象 | ||
client = CosS3Client(config) #获取客户端对象 | ||
############################################################################ | ||
# 文件操作 # | ||
############################################################################ | ||
# 1. 上传单个文件 | ||
response = client.put_object( | ||
Bucket='test01', | ||
Body='TY'*1024*512*file_size, | ||
Key=file_name, | ||
CacheControl='no-cache', | ||
ContentDisposition='download.txt' | ||
) | ||
# 2. 下载单个文件 | ||
response = client.get_object( | ||
Bucket='test01', | ||
Key=file_name, | ||
) | ||
# 3. 获取文件属性 | ||
response = client.head_object( | ||
Bucket='test01', | ||
Key=file_name | ||
) | ||
# 4. 删除单个文件 | ||
response = client.delete_object( | ||
Bucket='test01', | ||
Key=file_name | ||
) | ||
# 5. 创建分片上传 | ||
response = client.create_multipart_upload( | ||
Bucket='test01', | ||
Key='multipartfile.txt', | ||
) | ||
uploadid = get_id_from_xml(response.text) | ||
# 6. 删除分片上传 | ||
response = client.abort_multipart_upload( | ||
Bucket='test01', | ||
Key='multipartfile.txt', | ||
UploadId=uploadid | ||
) | ||
# 7. 再次创建分片上传 | ||
response = client.create_multipart_upload( | ||
Bucket='test01', | ||
Key='multipartfile.txt', | ||
) | ||
uploadid = response['UploadId'] | ||
# 8. 上传分片 | ||
response = client.upload_part( | ||
Bucket='test01', | ||
Key='multipartfile.txt', | ||
UploadId=uploadid, | ||
PartNumber=1, | ||
Body='A'*1024*1024*4 | ||
) | ||
etag = response['ETag'] | ||
# 9. 列出分片 | ||
response = clieent.list_parts( | ||
Bucket='test01', | ||
Key='mutilpartfile.txt', | ||
UploadId=uploadid | ||
) | ||
lst = response['Part'] | ||
# 10. 完成分片上传 | ||
response = client.complete_multipart_upload( | ||
Bucket='test01', | ||
Key='multipartfile.txt', | ||
UploadId=uploadid, | ||
MultipartUpload={'Part': lst} | ||
) | ||
############################################################################ | ||
# Bucket操作 # | ||
############################################################################ | ||
# 1. 创建Bucket | ||
response = client.create_bucket( | ||
Bucket='test02', | ||
ACL='public-read' | ||
) | ||
# 2. 删除Bucket | ||
response = client.delete_bucket( | ||
Bucket='test02' | ||
) | ||
# 3. 获取文件列表 | ||
response = client.list_objects( | ||
Bucket='test01' | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,5 @@ | ||
import cos_auth | ||
import cos_threadpool | ||
import cos_client | ||
from .cos_client import CosS3Client | ||
from .cos_client import CosConfig | ||
from .cos_exception import CosServiceError | ||
from .cos_exception import CosClientError | ||
from .cos_auth import CosS3Auth |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.