从本地到云端:基于 Node.js 的图片 URL 批量转换工具解析
项目名称:Image URL Converter
项目功能:图床
项目简介:一款图床工具,可以将任何图像 URL 转换为一个永久链接,托管在 Cloudflare R2 上。只需输入原始图像 URL,即可获得一个永久链接。
大家好,今天我给大家介绍一个轻量实用的开源项目——image-url-converter
,这是由 GitHub 用户 weijunext 开发的一个基于 Node.js 的命令行工具,它的主要功能是:将 HTML 文件中使用的本地图片路径,批量转换为线上图片 URL。
这个工具的主要使用场景是:
- 我们在写文档或博客时,常常会在本地插入图片;
- 但在发布到网站或博客平台(如 GitHub Pages、Notion、博客园等)时,本地图片路径会失效;
- 此时我们需要将这些图片上传到图床,并替换 HTML 中的地址,这个工具就派上了用场。
🧩项目核心功能
项目本质上是一个 CLI 工具,通过 Node.js 编写,核心流程分为三步:
HTML 解析
通过正则匹配提取 HTML 文件中的<img>
标签,并获取图片的src
属性。图片上传(自定义接口)
用户可以配置自己的图床上传接口,例如七牛、阿里云 OSS、或者图床 API。工具会自动将本地图片上传,并获取返回的 URL。路径替换
工具会将原 HTML 中的本地图片路径,替换成新获取的线上 URL。
⚙️使用方式
# 克隆项目
git clone https://github.com/weijunext/image-url-converter
# 安装依赖
npm install
# 执行转换
node index.js path/to/your/file.html
当然你还需要根据实际情况修改项目中的 upload.js
文件,来适配你自己的上传接口。
项目结构简析
index.js
:入口文件,负责解析 HTML、处理上传、替换路径;upload.js
:上传逻辑,可按需自定义;config.js
:配置文件,例如图床 API 信息;test.html
:示例 HTML 文件,方便测试功能。
适合哪些人使用?
- 有前端博客写作需求的开发者;
- 需要将 HTML 批量转换为可发布格式的内容创作者;
- 正在开发 CMS 或图文处理工具的工程师。
可以扩展的方向
- 支持 Markdown 文件路径替换;
- 集成多种图床适配器(如 SM.MS、imgur、腾讯云);
- 增加 Web UI 或 VSCode 插件;
- 支持图片压缩后上传,提升加载性能。
总结
image-url-converter
是一个简单却高效的工具,它解决了一个看似小却常见的问题:内容从本地迁移到线上时图片路径的自动替换。通过这个项目,我们也能看到如何用 Node.js 快速实现一个实用的自动化流程,是一个非常适合二次开发与学习的开源范例。
项目地址:https://github.com/weijunext/image-url-converter
油管:https://youtu.be/di6NfCiUkbo
留言
發佈留言