解决Markdown笔记图片失效问题:Gitee+PicGo图床搭建全攻略

解决Markdown笔记图片失效问题:Gitee+PicGo图床搭建全攻略

引言:为什么要解决搭建图床?

你是否遇到过这样的场景:

  • 用 Obsidian 写了半年的知识库,换电脑时发现 所有图片都变成 “破碎图标”
  • 把 Markdown 笔记分享给同事,对方打开后 图片全是本地路径,根本看不到内容
  • 尝试用云盘链接替代,却因为 “防盗链” 或 “链接过期”,图片还是无法正常显示……

本地 Markdown 笔记的 “图片依赖本地路径”,是困扰无数创作者的痛点。而解决这个问题的核心,就是搭建一个 “图床” —— 把图片托管到云端,让链接永远有效。

本文将带你用 “Gitee(国内免费仓库)+ PicGo(自动上传工具)+ Node.js(运行环境)” 搭建图床,不仅解决 “图片失效”,还能实现:

  • ✔️ 国内访问快:Gitee 服务器在国内,无需科学上网,图片秒加载;
  • ✔️ 完全免费:Gitee 仓库、PicGo、Node.js 均为开源免费工具;
  • ✔️ 无缝对接 Obsidian:写笔记时 “拖入图片自动上传”,全程无感知;

从 工具原理解析 到 Step by Step 实操(包括环境搭建、插件配置、异常排查),甚至帮你避过 90% 的踩坑点。无论你是笔记爱好者,还是专业创作者,都能通过这篇文章彻底解决 “图片链接失效” 的心病。

(下文将从概念扫盲开始,逐步拆解每一步配置,确保 “0 基础也能跟做”。)

文章目录

一、概念扫盲:为什么需要这些工具?

在开始操作前,先搞懂四个核心概念,避免 “盲目操作”:

1. 图床:图片的 “云端仓库”

  • 定义:专门用来存储图片的云端平台,核心是 生成 “永久可访问的图片 URL”(如 https://gitee.com/xxx.png)。
  • 类比:把图片当成 “货物”,图床就是 “网络仓库”,随时能通过链接提取货物(图片)。
  • 解决的痛
    • 本地笔记里的 ![示例](./images/pic.png),换电脑、分享给别人时,链接必然失效
    • 图床的链接是 “云端地址”,在哪台设备打开都能访问,彻底摆脱 “路径依赖”。

2. Gitee:国内版 “代码托管平台”(选它当图床的理由)

  • 定义:类似 GitHub,但服务器在国内,是 免费的代码 / 文件托管平台,可以理解为 “中国的 GitHub”。
  • 为什么选 Gitee 当图床
    • ✅ 访问快:国内节点,不用科学上网,图片加载秒开;
    • ✅ 免费开源:创建 “开源仓库” 后,图片可被公开访问(非开源仓库的图片无法外链);
    • ✅ 支持 RAW 链接:仓库里的图片能通过 https://gitee.com/用户名/仓库名/raw/分支/图片路径.png 直接访问(类似 GitHub 的 RAW 链接,但速度更快)。
  • 对比其他云盘:百度网盘的链接带防盗链,无法直接插入 Markdown;而 Gitee 的 RAW 链接是 “纯静态文件地址”,完美适配 Markdown 语法。

3. PicGo:图片上传 “自动化神器”

  • 定义图片上传客户端,核心是 “一键上传本地图片,自动生成网络链接”。
  • 核心价值:把 “登录 Gitee→找仓库→点击上传→复制链接” 的繁琐步骤,压缩成 “拖入图片→自动出链接”(甚至支持快捷键 Ctrl+Alt+U)。
  • 为什么需要插件
    PicGo 默认支持 GitHub、七牛云等图床,但 不直接支持 Gitee。这时需要安装 gitee-uploader 插件(用 Node.js 开发),让 PicGo 能对接 Gitee。

4. Node.js:插件的 “动力引擎”

  • 定义:让 JavaScript 代码能在电脑本地运行的 运行时环境(类似 Java 的 JVM,Python 的解释器)。
  • 在图床场景里的作用
    PicGo 的插件(如 gitee-uploader)是用 Node.js 开发的,必须安装 Node.js 才能 运行这些插件。简单说:Node.js 是 “插件的发动机”,没有它,PicGo 无法加载 Gitee 插件。

二、环境搭建:Node.js 安装(必做!)

3.1 下载 Node.js

访问 Node.js 官网,选择 LTS 长期支持版(如18.18.0 LTS):

  • Windows 用户选 x64 Installer(64 位系统通用);
  • macOS 选 .pkg 安装包;
  • Linux 通过包管理器安装(如 sudo apt install nodejs)。

3.2 安装与验证(以 Windows 为例)

  1. 双击安装包,勾选 “Add to PATH”(自动配置环境变量,避免手动设置);
  2. 一路点击 “Next”,默认路径安装即可;

打开命令提示符(CMD),输入以下命令验证:bash

node-v# 输出Node版本(如 v18.18.0) npm-v# 输出npm版本(如 9.8.1) 

✅ 若正常输出版本,说明安装成功。
我这里是之前装好的,就不演示下载安装了,没有什么难度,主要还是国内下载比较慢的问题,如果不方便的朋友,可以加我好友,直接发你安装包

03ac93ac-e6d4-4e1d-a7ba-9e8261ce5658.png

三、PicGo 安装:图片上传客户端

4.1 下载对应版本

访问 PicGo 官网 或国内镜像,根据系统选择:

37a3c255c2c09e3367f0e98432f70996.png
  • Windows:优先选 PicGo-Setup-xxx-x64.exe(64 位系统专属,性能更优);
  • macOS:选 PicGo-xxx.dmg

Linux:选 PicGo-xxx.AppImage。Windows一般建议选这个 2.4的版本都是可以的,不要选2.3之前的老版本就行,因为老版本还不支持gitee插件

65e09fa495e62de253db9b75220abe61.png

注意这里可能会有一个小插曲——程序被报错不安全,这里直接选保留就行了

01598ec82afbbef0d8456cf4f2b0d8a9.png

4.2 安装与启动

  1. 双击安装包,按向导完成安装;

启动 PicGo 后,右下角托盘会出现图标,右键→**“打开主界面”** 即可操作。

b1fdfb00-70bf-4121-a35d-29904bc2de74.png

四、Gitee 配置:创建图片仓库

5.1 新建 Gitee 仓库

  1. 填写关键信息:
    • 仓库名称:建议含img或者picture
    • 可见性:必须选 “开源”(否则图片无法公开访问);
  2. 点击 “创建”

初始化仓库:勾选(自动生成 README,便于管理);

7a45789841e55857ea299a430d7be7a1.png

登录 Gitee 官网,点击右上角 “+”→新建仓库

067aa939ac105d3ed200dadfa7425349.png

5.2 获取访问令牌(Token)

点击 Gitee 头像→**“设置”→“私人令牌”→“生成新令牌”**;

9f7c0fec1091330b99b6971bbd0d0b64.png
32297606a08e75639de441fde86e5464.png
ba72d63feda9fc18294013186ee977db.png
  1. 配置令牌:
    • 描述:填 PicGo图床(方便记忆);
    • 权限:仅勾选 “projects”(最小必要权限,避免安全风险);

提交后,复制生成的 Token(仅显示一次,务必保存到记事本!)。

1b43a66d22cbe26e3425a0bfda34d4d5.png

五、PicGo 配置:连接 Gitee 图床

6.1 安装 Gitee 插件

  1. 打开 PicGo 主界面→左下角 “插件设置”

命令行手动安装:bash

npminstall picgo-plugin-gitee-uploader -g

先换国内 npm 源(加速下载):bash

npm config set registry https://registry.npmmirror.com 

搜索框输入 gitee,找到 gitee-uploader 1.1.2** 插件,点击 “安装”

32ea619d9fb2d898721c4f2190dea609.png

⚠️ 若安装失败:

6.2 配置 Gitee 图床参数

点击 “设为默认图床” → “确定”,完成配置。

2ba155ae7f29eb8c0e90778c383fcdc5.png

填写关键参数(参考示例):

74409ab048d010d7fbfa3533c8df2372.png
参数填写规则示例
repo用户名/仓库名(从 Gitee 仓库 URL 提取)your_gitee_name/note-img-bed
branch仓库分支(可不写,默认mainmastermaster
token刚才复制的 Gitee Tokenxxxxxxxxxxxxx
path图片存储路径(与仓库img文件夹一致)img/
customPath按日期分类(可选,如${year}/${month}/${day}2025/09/16(自动生成)
17b3070d67452d5f07774d9fe95f9bfd.png

回到 PicGo 主界面→**“图床设置”→选择 “Gitee”**;

744d61d4ffdccd997c946c9190dfb1e5.png

六、Obsidian 集成:让本地图片自动上传

7.1 安装图片上传插件

搜索 Image Auto Upload,点击 “安装”→“启用”

打开 Obsidian→**“设置”→“社区插件”→“浏览”**;

eda8bd714b8cb244687cec2549ced562.png

7.2 配置 PicGo 服务

  1. 在 Obsidian 插件设置中,找到 “Image Auto Upload”

端口:默认36677,上传接口默认为http://127.0.0.1:36677/upload

95a415a84148147efd822cf77ed71c41.png


若被占用,可在 PicGo→**“设置”→“设置 Server”** 中修改

6b6b89466cbba92e64ee150c99856108.png

7.3 测试上传(关键步骤!)

  1. 在 Obsidian 中插入本地图片(拖入编辑区,或用 ![[pic.png]] 语法);
  2. 查看图片链接:已自动替换为 Gitee 的网络链接(如 https://gitee.com/xxx/xxx.png);

验证:复制链接到浏览器,若能正常显示图片,则配置成功。

900d4a4472db996b3468d1f2a9400897.png

七、常见问题排查

8.1 PicGo 上传失败

  • ❌ Node.js 未安装:重新运行 node -v 验证,若未安装则回到步骤三。

❌ 仓库路径错误:检查repo是否为用户名/仓库名path是否与仓库img文件夹一致;

12b5e7b7a5e7fa87ded159d75a256be8.png

❌ Token 权限不足:重新生成 Token,确保勾选projects权限;

a3f064abab102e5abab4b7fe5aa5574b.png

8.2 Gitee 图片无法访问

  • ❌ 路径错误:检查 PicGo 配置的path和仓库实际文件夹是否一致(如img/是否存在)。

❌ 仓库未开源:进入 Gitee 仓库→**“管理”→“基本信息”→设为 “开源”**;

e9d6fb74e34c873721c4f81a37755963.png

8.3 Obsidian 上传无反应

❌ 端口冲突:修改 PicGo 的 Server 端口(如36678),并同步更新 Obsidian 插件配置。

46d7fa973b2d7bc6bea931f69276138a.png

❌ PicGo 未启动:确保 PicGo 在后台运行(托盘有图标);

b1fdfb00-70bf-4121-a35d-29904bc2de74.png

八、总结:从本地到云端的跨越

通过 Gitee(存储)+ PicGo(上传)+ Node.js(环境) 的组合,我们实现了:

  • ✅ 本地图片自动转网络链接,跨设备、跨平台访问稳定;
  • ✅ 借助 Gitee 国内节点,访问速度优于 GitHub;
  • ✅ 配合 Obsidian 插件,写作时 “无感上传”,专注内容创作。

如果你在配置中遇到问题,欢迎在评论区留言,如果文章对您有所帮助,不妨点个三连支持一下!

附录:工具速链

Read more

python迭代器和生成器

1.迭代器 1.1 可迭代对象         可迭代对象指的是 实现了__iter__方法的对象,可以被for循环遍历的容器,比如一个列表,自定义的链表等。使用 iter() 方法获取它的迭代对象(可以理解为链表的指针) 1.2 迭代器         迭代器是指实现了 __iter__ 和 __next__方法对象,__iter__返回它本身,确保每个单独的节点都是可以被迭代的,满足链表可以从第n个元素开始访问的需求;__next__返回它的下一个节点,如果已经遍历完毕则抛出StopIteration异常。 # 实现了__iter__方法,是一个可迭代对象,可以理解为是一个整的链表,但此时还不能单独访问其中的元素 class Node: def __init__(self, data): self.data = data self.next: Node | None

By Ne0inhk
初始Python篇(8)—— 异常

初始Python篇(8)—— 异常

找往期文章包括但不限于本期文章中不懂的知识点: 个人主页:我要学编程(ಥ_ಥ)-ZEEKLOG博客 所属专栏: Python 目录 异常介绍 异常的处理 try-except  try-except-else  try-except-else-finally 异常的抛出  常见的异常类型   异常介绍 在学习异常之前,先了解bug的概念。简单理解就是程序运行不起来或者运行起来之后,输出的结果不符合我们的预期。有了bug肯定是要去解决的。而解决bug就离不开异常的处理。 如果是程序运行出错,有两种情况:1、程序本身就存在问题;2、对于存在输入型程序来说,可能是用户的输入导致程序报错。 第一种情况,就需要我们自己去排查,看是哪里出现了语法错误。 第二种情况,就需要用到我们今天学习的异常处理。 如果是程序运行之后,结果不符合我们的预期,这就需要用到调试工具了。 异常的处理 try-except  Python中对于异常的处理是通过 try-except 语句来捕获异常的。 语法: try: ... // 可能出现异常的代码 except 异常

By Ne0inhk
Python操作国产金仓数据库(KingbaseES)全流程:从环境搭建到实战应用

Python操作国产金仓数据库(KingbaseES)全流程:从环境搭建到实战应用

Python操作国产金仓数据库(KingbaseES)全流程:从环境搭建到实战应用 Python操作国产金仓数据库(KingbaseES)全流程:从环境搭建到实战应用,大家好,我是 xcLeigh。现在国产化数据库越来越普及,金仓数据库(KingbaseES)作为一款超实用的企业级关系型数据库,在政府、金融、能源这些关键领域用得特别多。今天我就带大家从零开始,一步步学会用Python操作金仓数据库,从环境准备、连接数据库,到CRUD核心操作、事务处理,再到常见问题排查,内容全是干货,代码拿过去就能用,就算是新手也能很快上手! 前言     中电科金仓(北京)科技股份有限公司(以下简称“电科金仓”)成立于1999年,是成立最早的拥有自主知识产权的国产数据库企业,也是中国电子科技集团(CETC)成员企业。电科金仓以“提供卓越的数据库产品助力企业级应用高质量发展”为使命,致力于“成为世界卓越的数据库产品与服务提供商”。     电科金仓自成立起始终坚持自主创新,专注数据库领域二十余载,具备出色的数据库产品研发及服务能力,核心产品金仓数据库管理系统KingbaseES(简称“KES”

By Ne0inhk
使用 Python 脚本一键上传图片到兰空图床并自动复制链接

使用 Python 脚本一键上传图片到兰空图床并自动复制链接

个人博客:材料与逻辑 对于博客作者、开发者或任何经常需要处理图片的人来说,图床是绕不开的工具。兰空图床(Lsky Pro)凭借其强大的功能和现代化的界面,成为了许多自建图床用户的首选。 但是,传统的“打开浏览器 -> 登录 -> 拖拽上传 -> 点击复制链接”的流程在需要频繁插入图片时显得格外繁琐,严重打断写作或开发的思路。 今天,我将分享一个简单的 Python 脚本,它能彻底改变你的图片上传体验。 核心功能:快,准,狠 这个脚本旨在实现一个目标:以最快速度将本地图片转换为可用的网络链接。 它具备以下核心特性: 1. 完全脱离浏览器:直接在终端(命令行)通过一条命令完成上传。 2. 基于文件名传参:无需复杂的配置,只需告诉脚本你要传哪个文件。 3. 自动复制到剪切板:这是灵魂功能!上传成功后,图片

By Ne0inhk