Giter VIP home page Giter VIP logo

pullandmergeconfig's Introduction

parseAndCombineMyClashRules

特别鸣谢

jetbrains

简介

这是一个可以自动合并多个订阅的信息,到我们指定的基础 clash 配置文件库中的脚本。

可能上面这段话说的不容易理解,我们来举个例子,我们购买了不少服务,每个服务商都提供了一个代理订阅地址,我们不想切换配置文件,想把所有我们购买的服务都合并到一个配置文件,并且采用网络上面维护比较好的规则。



支持解析的规则

目前可以解析 clash 的 yaml 文件,base64 的配置文件(目前只支持解析了 v2ray 和 Trojan ,ss 由于我这边没有测试数据暂不支持)


遇到无法解析

提 issue


支持的基础规则


配置文件说明

文件太长,参考 配置文件说明。另外需要多说一句,使用之前先看到自己的基础规则都支持啥,配置文件就是为了可以更多的自定义而已,不要一股脑的弄上去,弄坏了也不知道咋回事,多测试测试


使用方法

  1. clone 或 下载可执行文件(后续提供)
  2. config/.config.yaml 改名为 config/configName.yaml 在这里面配置你自己的信息。最关键的节点是 pull-proxy-source 这里面配置的就是你的服务 订阅链接。其他的配置其实可以不用改,如果要更改就做好详尽的测试,里面的每个节点在目前支持的基础规则我都保证测试可用,如果你用不了,那就自己好好查查。另外一个节点是 Proxy 这里面可以配置你自己搭建的,或者没有配置文件的节点。配置文件里面的内容最终都会合并到配置文件里面去。
  3. 如果是 clone 下来的项目就在配置好 go 的环境以后,执行 go run main.go Port 就可以了。(注意,如果报错了第一反应就是检查网络,别是网络不通。)Port 是你服务器要开启的端口。如果是下载的可执行文件,就在命令行下运行可执行文件 + 参数就ok了。
  4. 然后访问你的 http://ip:port/parse?name=configName&baseName=BaseRuleNameconfigName 这个就是上面操作你自己更改的配置文件名称,BaseRuleName 这个名字就是在配置文件中 base-rule 节点下的 name,这个参数是可选的,如果不传入就会采用base-rule 节点下的第一个作为基础配置库。如果没问题,就可以看到输出配置文件,如果有问题去 log/errors.txt 查看日志文件。

特别说明

本版本开始,已经不建议在本地运行,推荐部署在服务器上。因为开启了 http 服务器,可以更长时间的在服务器上运行了,以往的 crontab 也不需要了,现在在用实时合并直接输出了,合并会更及时。

这一切都是在满足我的需求为第一前提下弄的,如果能够对你也有用,我深感荣幸。如果你想使用但是遇到了问题,请去提 issue 我会在我所知的情况下尽可能的回答。

配置文件中的 base-rule 节点不要修改,因为你改了代码也不支持,写到配置文件中,仅仅是为了防止他们的地址变动我不用再次编译了而已。


鸣谢

pullandmergeconfig's People

Contributors

crazyhl avatar caesarvan avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.