python上传到七牛图床

本文详细介绍了一种使用Python脚本实现将本地图片批量上传至七牛云存储的方法。通过构建鉴权对象并利用qiniu SDK,文章展示了如何设置Access Key、Secret Key以及指定存储空间,进而实现文件的远程上传。同时,文中还提供了错误处理机制,确保上传过程的稳定性和可靠性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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")

转载于:https://my.oschina.net/u/2443527/blog/726006

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值