七牛云测试域名到期博客图片问题

从上周末开始到今天,终于把七牛云到期的测试域名所属空间的博客照片迁移到腾讯云。腾讯云有一定量免费空间供用户使用(发博文时免费额度:50 GB 标准存储容量,10 GB CDN 回源流量,100 万次读请求,100 万次写请求。费用实例),希望腾讯云短期内不要出对没钱用户的制裁条款。当然,出了我们也不用慌,再迁移便是,正所谓不折腾不舒服斯基。果然免费的都是要付出其它代价的~

备份七牛云图片到本地

方案一:如果此时你处在工作日时间,可以参考此链接教你如何在七牛云域名过期后备份内容完成转移,让七牛云技术人员临时恢复你的测试域名,直接从该测试域名所属的空间下载资源备份到本地,具体操作可参考此帖的1、2、6步骤即可。具体命令,时间久了可能官方会更新,若此帖的1、2、6步骤涉及的命令可能失效,此时命令可参考qshell

此为方案一,可以完美完整备份云端资源到本地,也是本人极力推荐的方案。

方案二:

您需要先新建一个同区域存储空间,会分配一个新的测试域名到新空间。

1)qshell account 此处填写ak 此处填写sk 此处填写自定义的用户名 (ak sk可以在控制台右上角的个人面板,密钥管理里找到)

2) qshell listbucket 原bucket名 -o list.txt (list出全部文件

3)cat list.txt | awk ‘{print $1}‘ >list_final.txt ( 用awk获取list结果的第一列)

注:3)本人没有执行通过。解决办法是把2)中的 list.txt 文件内容拷贝到 Excel 里,在 Excel 里批量删除列,只保留第一列。然后把第一列内容拷贝出来,粘贴到新文件中,将该新文件命名为 list_final.txt 即可。这样做就达到了3)的效果。

4)qshell batchcopy 原bucket名 新bucket名 -i list_final.txt (复制到新bucket的文件和原bucket文件名一致

5)qshell qdownload newfilelist.txt (newfilelist.txt为下载的配置文档

qshell安装包及文档请参考此帖

不太明白的可以参考 此帖

该方案本人不太推荐,因为我一开始用的是这个办法(因为是周末,技术人员不方便临时恢复我的测试域名),发现有个别资源没有下载到本地。所以,周一我用方案一完美备份了资源。

申请腾讯云

可参考此帖

批量替换文章里的图片链接

方案一:可参考此帖

方案二:一开始同学推荐使用正则表达式,无奈自己菜鸡。而后,本人参考网上一篇批量修改文件内容的Python代码,魔改后。成功实现了批量修改本地Markdown文章图片链接。下面把Python代码贴出来供大家参考,轻拍~(Python版本2.7)

#coding=utf-8#可加入中文注释
#!/usr/bin/python
# -*- coding: UTF-8 -*-
#函数功能:将指定文件夹下所有文件和子文件夹下的文件遍历,并修改文件内容
import os
fpath ="/Users/fsf/PycharmProjects/Python2_tencentcloud/test"#这里是你的第一级文件夹的路径
def filechanger(path):
        filenames = os.listdir(path)#将path路径下的所有文件名存入列表filenames
        for filename in filenames:#循环遍历每个文件
                domain = os.path.abspath(path)#获取规范的路径
                filename = os.path.join(domain,filename)#带路径的文件名
                if os.path.isdir(filename):  # 如果是文件夹进入递归
                        filechanger(filename)
                        continue
                fread = open(filename,'r')
                fwrite = open("%s.backup"%filename,'w')

                for line in fread.readlines():
                        src_str = line

                        if src_str.find('![') != -1:
                                start = src_str.index('![') + 2
                                end = src_str.index('](')
                                sub = src_str[start:end]

                                start1 = end + 2
                                end1 = src_str.index(')')
                                sub1 = src_str[start1:end1]

                                sub2 = src_str[(end1 - 4):end1]

                                s1 = 'https://xxxxxxxxx-3334.cos.ap-hongkong.myqcloud.com/'
                                s11 = 'https://xxxxxxxxx-3334.cos.ap-hongkong.myqcloud.com/%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7'

                                # sub3 = src_str[:start1] + '../images/' + sub + sub2 + src_str[end1] + src_str[(end1+1):]
                                s2 = sub + sub2 + src_str[end1] + src_str[(end1+1):]

                                if src_str[start:(start + 12)] == '屏幕快照':
                                    s22 = s11 + src_str[(start + 12):end] + sub2 + src_str[end1] + src_str[(end1+1):]
                                    sub3 = src_str[:start1] + s22.replace(' ', '%20')
                                else:
                                    sub3 = src_str[:start1] + s1 + s2.replace(' ','%20')
                                fwrite.write(sub3)  # 修改后写入新文件
                                print(sub3)
                        else:
                                fwrite.write(src_str)
                                print(src_str)
                                continue

                fread.close()
                fwrite.close()
                os.remove(filename)#如果想更改数据后想保留原文件以及修改文件名可屏蔽这一句和下一句
                os.rename("%s.backup" % filename, filename)#
filechanger(fpath)

Debug过程中参考的帖子:

python中readline判断文件读取结束的方法

IOError: No such file or directory: but the files are there…

python 获取一个文件夹里面所有文件名(不加后缀)

以上

本来打算趁着这个当儿用回Hexo,但是这样相应的markdown语法也要微调,很不方便,而且源代码托管也是一个问题。还是继续用博客园,这样只专注于写好文章就好了~

下列是一些为了迁移到 Hexo,对文章进行批量修改的 Python 代码(Python版本2.7)。当然,也是基于批量修改文件内容的Python代码魔改的:

批量加入hexo格式的文章头部

---
title:
date:
categories:
tags:
---

python代码:

#coding=utf-8#可加入中文注释
#函数功能:将指定文件夹下所有文件和子文件夹下的文件遍历,并修改文件内容
import os
os.chdir('/Users/xxx/PycharmProjects/Python2_02/test2')
fpath ="/Users/xxx/PycharmProjects/Python2_02/test2"#这里是你的第一级文件夹的路径
def filechanger(path):
        filenames = os.listdir(path)#将path路径下的所有文件名存入列表filenames
        for filename in filenames:#循环遍历每个文件

                #获得文件名(不包含扩展名)
                filename1 = filename
                i = filename1.rfind('.')
                filename2 = filename1[:i]

                domain = os.path.abspath(path)#获取规范的路径
                filename = os.path.join(domain,filename)#带路径的文件名
                if os.path.isdir(filename):  # 如果是文件夹进入递归
                        filechanger(filename)
                        continue
                fread = open(filename,'r')
                fwrite = open("%s.backup"%filename,'w')
                sub = '---' + '\n' + 'title: ' + filename2 + '\n' + 'date: 201-- 00:00:00' + '\n' + 'categories: ' + '\n' + 'tags: ' + '\n' + '---' + '\n\n'
                fwrite.write(sub)
                for line in fread.readlines():
                        fwrite.write(line)

                fread.close()
                fwrite.close()
                os.remove(filename)#如果想更改数据后想保留原文件以及修改文件名可屏蔽这一句和下一句
                os.rename("%s.backup" % filename, filename)#
filechanger(fpath)

原文地址:https://www.cnblogs.com/doctorx/p/9988324.html

时间: 2024-10-05 04:01:29

七牛云测试域名到期博客图片问题的相关文章

七牛测试域名过期后批量下载图片到本地

在网上查询了一下,七牛云的网站上是不支持直接下载所有的图片的,需要借助他们的qshell工具来批量下载图片 文档在此: https://developer.qiniu.com/kodo/tools/1302/qshell 下载后解压,包含以下文件 1 2 3 4 5 6 7 8 9 10 [email protected]  /Users/jim/Downloads/qshell-v2.1.8   ll  18:13:40 total 99824 [email protected] 8

Ueditor结合七牛云存储上传图片、附件和图片在线管理的实现和最新更新

最新下载地址: https://github.com/widuu/qiniu_ueditor_1.4.3 Ueditor七牛云存储版本 注意事项 老版本请查看 : https://github.com/widuu/qiniu_ueditor_1.4.3/tree/v1.0.0 关于地址报错 请修改 php/config.json 中的 uploadQiniuUrl 和 ChunkUploadQiniuUrl 参数,因为最近反馈地区错误报错比较多,举个简单的例子华南地区修改如下 "uploadQi

20172311-ASL测试 2018-1938872补充博客

20172311-ASL测试 2018-1938872补充博客 课程:<程序设计与数据结构> 班级: 1723 姓名: 赵晓海 学号: 20172311 实验教师:王志强老师 测试日期:2018年10月12日 必修/选修: 必修 测试内容 已知线性表具有元素{5,13,19,21,37,56,64,75,80,88,92},如果使用折半查找法,ASL是多少? (本题目2分,要求写出结题过程) 测试过程及结果 测试过程中遇到的问题和解决过程 问题1:什么是ASL 问题1解决方案:通过询问同学得知

Python 实用爬虫-04-使用 BeautifulSoup 去水印下载 CSDN 博客图片

Python 实用爬虫-04-使用 BeautifulSoup 去水印下载 CSDN 博客图片 其实没太大用,就是方便一些,因为现在各个平台之间的图片都不能共享,比如说在 CSDN 不能用简书的图片,在博客园不能用 CSDN 的图片. 当前想到的方案就是:先把 CSDN 上的图片都下载下来,再手动更新吧. 所以简单写了一个爬虫用来下载 CSDN 平台上的图片,用于在其他平台上更新图片时用 更多内容,请看代码注释 效果演示 Python 源代码 提示: 需要先下载 BeautifulSoup 哦,

使用七牛云存储在网站中进行图片外链

在CSDN中写博客,如果想在文章中插入一张图片,其实是非常简单的,只要从你本机进行图片选择,然后选择上传,图片就会上传到CSDN的服务器,到时候在文章显示的时候就会读取该图片.但是如果是在自己的搭建的网站中要进行图片的显示就会遇到问题,因为图片无法从你本机读取,除非你的本机是一台服务器.所以我们要选择一个专门存储图片的服务商,同时存储的图片还能进行外链,即获得图片的URL地址,到时候就可以通过该URL访问并显示这张图片. 我推荐使用的图片存储商是七牛云存储,这是一个免费的存储空间,貌似百度云盘不

用IDM下载博客图片

前言 写博客的人一定都会有一个图床,将图片存在那里.发现自己以前没有注意图片来源问题,随手就贴在博客上面了.现在有不少图片都挂了,换句话来说有可能自己目前用的图床不提供服务了,那所有的图片都有可能丢失......所以打算写个脚本,把以前博客的图片保存下来,并在以后发博的时候注意保存本地图片.emmm,程序如下,主要是个人用脚本,所以很多地方就是图自己的方便.根据自己的情况写的: 代码 # -*- coding: utf-8 -*- import os import requests from b

异想家博客图片批量压缩程序

为了方便给自己的博客配图,用Golang写了一个脚本处理,现分享出来,有需要的朋友也可以参考修改使用. 压缩规则 1.图片都等比例压缩,不破坏长宽比. 2.如果是横屏图片,压缩到宽度为1280,高度适应. 3.如果是竖屏图片,压缩到高度为1000,宽度适应. 4.如果分辨率小于这个,不压缩. 5.支持png.jpg.jpeg. 使用方法 go build jfzBlogPicCompress.go 原图放在当前目录下的raw目录中,压缩后的图片生成在thumb目录下,运行生成的二进制文件即可,压

博客图片点击放大

1. 进入博客,点击管理——>设置——>申请支持JS代码权限: 2. 支持JS代码后,在页脚Html代码中粘贴如下代码: <div id="shadediv" style="display: none;position: fixed;z-index: 1000;top: 0;left: 0; width: 100%;height: 100%;background-color: rgba(255,255,255,.8);"> <img i

【转】hexo博客图片问题

1.首先确认_config.yml 中有 post_asset_folder:true. Hexo 提供了一种更方便管理 Asset 的设定:post_asset_folder 当您设置post_asset_folder为true参数后,在建立文件时,Hexo 会自动建立一个与文章同名的文件夹,您可以把与该文章相关的所有资源都放到那个文件夹,如此一来,您便可以更方便的使用资源. 2.在hexo的目录下执行npm install https://github.com/CodeFalling/hex