统一批量格式化节点名称

统一批量格式化节点名称

节点名称五花八门?节点命名不符合自己的习惯?怎么办?最傻的办法就是一个一个手动修改!然后,当更新订阅时,好嘛,五花八门或者不适合自己习惯的节点名称又回来了!😭

这个项目能一定程度上解决你的烦扰!

项目作用

  • 批量格式化你的节点链接或订阅地址,让所有节点统一以 国旗emoji | 国家代码 | 自定义后缀 的形式命名,设置还可以加上 ip 地址的 ORG 组织名
  • 即便你使用的订阅需要经常更新,也可以以 API 的形式生成一个新的订阅,实时格式化节点名称

如何部署

通过 CF worker 即可部署,非常简单,项目地址

复制 js 代码到 cf worker 项目,部署,设置一下环境变量:

  • LINK_RENAME = 自定义名称后缀,如 Yutian81专用
  • BG_IMG = 前端页面背景图直链,如:https://bing.img.run/1920x1080.php,注意,必须是直链图片

使用方法

方法一:前端页面可视化操作

访问你部署好的项目域名(建议绑定自定义域名,因为 worker 域名在国内是阻断的),假设为 https://format.yutian81.workers.dev/,下文均以此地址为例

image.png

输入节点链接或订阅地址(每行一条),点击格式化,下方会返回 base64 编码的节点信息,复制后导入 v2ray 客户端,导入后节点名称已经全部自动格式化了

image.png

方法二:API 调用

如果更新订阅,会覆盖已经格式化的节点,又需要重新手动操作一次。那么可以借用 API 生成一个新的订阅,实时格式化最新的点。调用方式:直接在浏览器访问以下链接:

1
https://format.yutian81.workers.dev/sub/带http或https的订阅地址

也就是 https://项目域名/sub/订阅地址 这样的格式,如果浏览器自动返回一段 base64 编码,说明格式化成功

image.png

直接将 https://format.yutian81.workers.dev/sub/带http或https的订阅地址 填入 v2ray 客户端,更新订阅即可

支持的节点协议

  • vless
  • vmess
  • trojan
  • ss
  • hy2

理论上应该支持 socks5,但是我没有测试,好像也没有什么意义

已知问题

受限于域名 dns 查询和 IP 地址查询 API 均为免费 API,如果订阅内有大量节点,可能会因为 API 的并发限制导致域名和 IP 地址位置查询失败,从而显示 未知国家

使用的 API

域名 dns 查询 API

  • 阿里云:https://223.5.5.5/resolve?name=${domain}
  • cloudflare : https://cloudflare-dns.com/dns-query?name=${domain}&type=A
  • 你也可以修改代码新增或替换 API

IP 查询 API

  • 感谢老王提供的 API:https://ip.eooce.com/${ip}
  • ipinfo 免费版:https://ipinfo.io/${ip}/json

#科学上网 #节点 #api