请注意,本文编写于 2267 天前,最后修改于 2244 天前,其中某些信息可能已经过时。
因为使用了cosUploadV5插件所有的图片都保存到cos了
为了防止腾讯云boom所以东拼西凑了这个脚本
以下是代码渣东拼西凑的代码
# -*- coding=utf-8
from qcloud_cos import CosConfig
from qcloud_cos import CosS3Client
from qcloud_cos import CosServiceError
from qcloud_cos import CosClientError
import sys
import logging
import os
# 腾讯云COSV5Python SDK, 目前可以支持Python2.6与Python2.7以及Python3.x
# pip安装指南:pip install -U cos-python-sdk-v5
# cos最新可用地域,参照https://www.qcloud.com/document/product/436/6224
logging.basicConfig(level=logging.INFO, stream=sys.stdout)
# 设置用户属性, 包括secret_id, secret_key, region
# appid已在配置中移除,请在参数Bucket中带上appid。Bucket由bucketname-appid组成
secret_id = 'AKIDylkNDVyT8uJF9K5PXfebguxvF' # 替换为用户的secret_id
secret_key = 'MWZIQqpDwRbkskqGfY8pr9s7y' # 替换为用户的secret_key
region = 'ap-guangzhou' # 替换为用户的region
token = None # 使用临时秘钥需要传入Token,默认为空,可不填
config = CosConfig(Region=region, SecretId=secret_id, SecretKey=secret_key, Token=token) # 获取配置对象
client = CosS3Client(config)
#列出usr目录下的文件
response = client.list_objects(
Bucket='typecho-12513921', #替换为自己的空间名
Delimiter='',
MaxKeys=1000,
Prefix='usr',
EncodingType='url'
)
dict=response['Contents'] #取出Contents后的数组
list=dict
list1=list.pop(0) #移除列表中的第0个元素
def mkdir(path):
path=path.strip() # 去除首位空格
path=path.rstrip("\\") # 去除尾部 \ 符号
isExists=os.path.exists(path) # 判断路径是否存在 存在True不存在False
# 判断结果
if not isExists:
os.makedirs(path) # 创建目录操作函数
# print path+' 创建成功'
return True
else:
# print path+' 目录已存在'
return False # 如果目录存在则不创建,并提示目录已存在
#遍历数组
for item in list:
file_name= item['Key'] #取出文件路径和文件名
root ='/' + file_name.split("/")[0] + '/' + file_name.split("/")[1] + '/' + file_name.split("/")[2] + '/' + file_name.split("/")[3] #切片取出目录
mkpath='/www/wwwroot/529i.com' + root #构造下载目录
mkdir(mkpath) #调用mkdir函数创建目录
path = mkpath + '/' + file_name.split("/")[-1] #构造下载目录和文件名
# print path
#下载文件
response = client.get_object(
Bucket='typecho-12513921',
Key=file_name,
)
response['Body'].get_stream_to_file(path)
记得关闭腾讯cos储存桶的防盗链
以上代码保存为xx.py定时执行就ok了
python2.7测试ok
2 条评论
调用了下会报取出conetnet后数组的问题
错误日志是什么样的我这里没有问题的,