no BB, show code
# -*- coding: utf-8 -*-
# @Author: xsu19
# @Date: 2016-08-01 20:33:41
# @Last Modified by: xsu
# @Last Modified time: 2016-08-02 17:34:44
from qiniu import Auth, put_file, etag, urlsafe_base64_encode
import qiniu.config
import json
import os
import os.path
# 需要填写你的 Access Key 和 Secret Key
access_key = '*'
secret_key = '*'
# 要上传的空间
bucket_name = '*'
# 公开的http路径
qiniu_path = '*'
# 上传到七牛后保存的文件路径
remote_path = 'pic/phpstorm/'
# 本地要上传的图片路径
local_path = 'image/'
# 上面的请根据实际情况修改
# 构建鉴权对象
q = Auth(access_key, secret_key)
error_file = []
files_url = []
print("uploading...")
for filenames in os.walk(local_path):
for filename in filenames[2]:
key = remote_path + filename
token = q.upload_token(bucket_name, key, 3600)
# print(filename)
localfile = local_path + filename
# 上传
ret, info = put_file(token, key, localfile)
is_hash_same = (ret['key'] == key) and (ret['hash'] == etag(localfile))
if not is_hash_same :
print(filename, "upload failed")
# 把上传失败的记录到error_file中
error_file.append(localfile)
else:
files_url.append(qiniu_path + remote_path + filename)
# error_file not null
if error_file != []:
print(error_file, 'upload failed')
else:
print("uploaded")