把 markdown 文章中引用腾讯云 COS 中存储的图片改为本地存储,并使用 hexo 发布
一、起因
今天逛论坛发现有一位老哥的用的对象存储,然后被恶意刷流量了,最后也只能自己买单,毕竟流量确实被他用了,后来自己细想了下,确实有被盗刷的可能性,但是这个防盗刷,看了几种防盗刷策略,都感觉不太稳妥,进而又考虑到自己图片并不多,所以也没必要使用图床了,索性直接图片本地存储算了。
二、批量替换 markdown 文章中的图片引用
2.1 替换工具说明
在我准备自己写代码的时候,突然想看看有没有人实现过了,如果有人实现了倒是省了功夫了,结果搜索到一个仓库,已经实现了这个功能;
仓库地址:https://github.com/YellowAndGreen/Md-ImgLocalize
如果单纯替换图片的话,代码拉下来按照使用说明就是可以用的,但是后续使用 hexo 发布文章,还需要规范化生成的图片文件夹名称,以及引用使用 /
来分隔,在这个仓库的基础上我修改了代码,可以搭配后续 hexo 发布文章,图片直接生成,无需折腾;
修改后的仓库地址:https://github.com/hczs/Md-ImgLocalize/tree/main
2.2 替换工具使用说明
拉取代码:
git clone https://github.com/hczs/Md-ImgLocalize/tree/main
安装依赖:
pip install aiohttp
执行:
python main.py --md_path=[你的markdown文章所在文件夹] --modify_source
– modify_source 指的是直接在原markdown文件中修改
操作完后可以自行查看替换效果
三、hexo 配置发布
- 修改
hexo
的_config.yml
文件中的post_asset_folder
为 true - 安装依赖:
npm install hexo-asset-img --save
- 本地查看效果:
hexo clean && hexo generate && hexo server
本地查看没有问题,就可以发布了;至此弃用图床。