将Gitee图床转到Github

5月19日更新:昨天Gitee开始对开源仓库进行审查了,我本地的还有部分没有转的图床链接又失效了,建议大家能换还是尽量换吧,本篇放到Github上也不是长久之策,我目前使用的是七牛云,使用了快两个月体验很好,具体配置可以看我这一篇博客:使用PicGo配置七牛云图床

昨天(3月25日)在写笔记的时候突然发现Gitee图床突然用不了了,显示的都是Gitee的图标,吓了我一跳,然后赶紧检查了一下,最后也不知道怎么回事,直接在Gitee打开图片就可以看,然后在群里问别人发现很多人都是这样,但是我的笔记图片可都在Gitee上,这不是要我命呢,然后只能赶紧想办法,有两个方案:要么是购买阿里云的oss服务器,要么是转到Github上继续白嫖,口袋吃紧的我果断选择了后者,Github申请token的过程与Gitee差不多,我在这里简单说一下。

Github导入Gitee仓库

首先先把Gitee图床仓库导过来:

在这里插入图片描述

然后从Gitee复制过来图床链接,设置新图床名称,然后点击导入等待导入完成就ok了。

在这里插入图片描述

申请TOken

下面说一下怎样申请Token:右上叫头像->Setting->进去后滑到最下面,左边Developer settings->Personal access tokens->Generate new token,然后按照下图设置,最后滑到最下面点击Generate token,将token保存下来(只会显示一次,如果丢了下次需要重新申请)

image-20220326144049674

然后打开picGo,按照下图设置就ok了

仓库名:

image-20220326144259394

分支名设置成master就可以,Token填写刚刚申请的,存储路径是以当前仓库为相对路径的图片保存路径,自定义域名是为了加速访问的,前面都一直,最后两个换成仓库名就可以,https://cdn.jsdelivr.net/gh/你的仓库名,然后点击确定,选择设置为默认图床

在这里插入图片描述

文件路径处理

上面全部完成之后就可以把你的Gitee仓库同步到GitHub仓库了,然后就是处理本地文件了,我写了一个py的脚本,可以直接把文件夹下的所有文件的路径全部转换了,包括子文件夹,使用时候只需要把36,38,40行的文件路径修改一下就行了

注意,这里是直接在原文件改的,如果不放心的话可以先手动备份一下,转换完成后如果转换好了再删掉备份,我自己试过是没有问题的

import os
import os.path


def trans(files, path):
    for file in files:
        filepath = os.path.join(path, file)

        if os.path.isdir(filepath):
            # 如果是文件夹则递归处理
            next_files = os.listdir(filepath)
            trans(next_files, filepath)
            continue
        root, ext = os.path.splitext(filepath)  # root为文件名,ext为后缀(包括.)

        if(ext != ".md"):
            # 只处理markdown文件
            continue

        print("正在处理:", filepath)
        source_file_path = filepath
        dest_file_path = filepath + ".bak"

        # 读入文件修改后写入新文件,然后把原文件删除,把新文件重命名为原文件
        with open(source_file_path, encoding='utf-8') as fr, open(dest_file_path, 'w', encoding='utf-8') as fw:
            for line in fr:
                new_line = line.replace(source_link, dest_link)
                fw.write(new_line)
        os.remove(source_file_path)
        os.rename(dest_file_path, source_file_path)


if __name__ == "__main__":
    # 待处理目录,注意这里需要是双反斜杠
    basepath = "D:\\blogs"
    # 原地址
    source_link = "https://gitee.com/qlz-huo/drawing-bed/raw/master"
    # 新地址
    dest_link = "https://cdn.jsdelivr.net/gh/hQlz/draw-bed"

    files = os.listdir(basepath)

    # 处理文件
    trans(files, basepath)
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hydrion-Qlz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值