Skip to content

mabDc/eso_source

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
GitHub-Action
Mar 23, 2022
432e9a0 · Mar 23, 2022
Mar 12, 2022
Jan 29, 2021
Mar 13, 2022
Mar 23, 2022
Mar 13, 2022
Mar 23, 2022
Jan 29, 2021
Mar 4, 2022
Mar 23, 2022

Repository files navigation

亦搜规则

update mainfest on push

(亦搜为个人创作,社区驱动,从未有任何官网和公众号,更新渠道为github和频道和群。

该仓库用于存放规则文件、合并脚本、规则编写说明与wiki,可以网络导入,可以是单个规则,也可以是合并后的规则。规则长期更新,欢迎成为协作者或者提交pr参与规则编写。

一般请无视其他直接添加该地址 https://cdn.jsdelivr.net/gh/mabDc/eso_source/manifest

merge.py是自动合并脚本,合并分类中的文件时会忽略其中的文件夹(含失效文件夹)、*.md文件和sub.json文件,修复失效源后,将其移除失效文件夹才会被合并

mainfest 是所有源合并后的规则,链接:

https://raw.githubusercontent.com/mabDc/eso_source/master/manifest

网络问题可以使用jsdelivr cdn,即mainfest from jsdelivr,链接:

https://cdn.jsdelivr.net/gh/mabDc/eso_source/manifest

所有图片源合并后的规则链接:

https://raw.githubusercontent.com/mabDc/eso_source/master/图片/sub.json

所有文字源合并后的规则链接:

https://raw.githubusercontent.com/mabDc/eso_source/master/文字/sub.json

所有视频源合并后的规则链接:

https://raw.githubusercontent.com/mabDc/eso_source/master/视频/sub.json

所有音频源合并后的规则链接:

https://raw.githubusercontent.com/mabDc/eso_source/master/音频/sub.json

下面是规则编写说明。主要是三类:地址规则、取元素规则、取字符串规则。

响应解析目前仅支持静态,不支持动态,同多多猫,多多猫插件开发指南 解释的很清楚

2.5.2 插件的调试
...
注意: Ctrl+u和F12开发者工具Elements面板中显示源代码的的区别是前者显示的是不加载js的html源代码,后者显示的是加载内部外部js后的html代码。sited引擎读取前者代码,所以有时候在浏览器开发者工具(Console面板)能找出数据,在app里却报错,就是因为Ctrl+u源代码中没有相应数据。

地址规则

请用源编辑界面地址模版

@js:
(() => {
  var url = `/xx${keyword}xx${page}`;
  var method = "get"; // or "post"
  var body = {};
  var headers = {};
  // var encoding = "gbk";
  return {url, method, body, headers};
})();

需要对搜索关键词进行中文编码则为

@js:
(() => {
  var url = `/xx${keyword}xx${page}`;
  var method = "get"; // or "post"
  var body = {};
  var headers = {};
  var encoding = "gbk";
  return {url, method, body, encoding, headers};
})();

响应解码由app内部自动处理,无需了解。

取元素规则

使用jsonpathxpathcss或者js编写,其中前三种可以网页右键复制路径,app自动识别。

$..item.*或者//li或者li等,若用js,最后应输出Array对象

取字符串规则

形如 rule##replaceRegex##replacement##replaceFirst

其中 rule 可以是 jscssxpathjsonpath , 形式如下:

@js:js code

@json:$.name$.name(省略@json:

@css:.name@text.name@text(省略@css:

@xpath://*[class=name]/text()//*[class=name]/text()(省略@xpath:

:regex

建议省略@json:@css:@xpath:,由app自动识别。

如果需要拼接则用aaa{{rulexxx}}bbb{{ruleyyy}}ccc

其他规则

  1. 所有规则含host,除搜索和发现地址都含有result,除地址都含有baseUrl

  2. 结果规则会成为下一条地址规则result,成为下一条除地址规则的lastResult。地址规则的响应会成为其他规则的result

  3. 地址规则不用js时,使用$加变量名来动态替换实际内容,包含$keyword$page,$result,$host等。地址规则使用js时请写变量名,不需要带$

  4. 可以用http.get(url)来获取请求。

  5. 规则搜索部分共用一个js上下文,目录部分也共用一个js上下文。同一个上下文的规则的全局变量可以直接相互获取。(如用于目录列表设置id,章节结果获取所设置的id)

更多内容请查阅 wiki

About

亦搜规则,初次使用请导入合并规则

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages