码迷,mamicode.com
首页 > 编程语言 > 详细

亚马逊s3上传大文件Python

时间:2014-10-10 20:50:14      阅读:544      评论:0      收藏:0      [点我收藏+]

标签:blog   http   io   os   ar   for   文件   sp   div   

实例如下:

import boto
from boto import connection
import os, math
from filechunkio import FileChunkIO

# fill in the id and key
conn = boto.connect_s3()
print conn
# fill in your bucket name
bucket = conn.get_bucket()
print bucket

# your file path want to upload
source_path = ‘./‘
source_size = os.stat(source_path).st_size

print source_size

mp = bucket.initiate_multipart_upload(os.path.basename(source_path))

chunk_size = 524288000
chunk_count = int(math.ceil(source_size / chunk_size))
for i in range(chunk_count + 1):
  print i
  offset = chunk_size * i
  bytes = min(chunk_size, source_size - offset)
  with FileChunkIO(source_path, ‘r‘, offset=offset, bytes=bytes) as fp:
    mp.upload_part_from_file(fp, part_num=i + 1)

mp.complete_upload()
print ‘ok‘

参考网页 http://boto.readthedocs.org/en/latest/s3_tut.html

亚马逊s3上传大文件Python

标签:blog   http   io   os   ar   for   文件   sp   div   

原文地址:http://www.cnblogs.com/jaw-crusher/p/4016322.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!