Skip to content

RebornQ/eso_source

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

请看wiki

wiki目录

一 关于亦搜

二 规则导入

三 规则编写

  1. JSONPath与XPath语法参考 已完成

  2. HTTP请求基础 已完成

  3. 请求规则 已完成

  4. 节点列表规则 50%

  5. 节点内容规则 80%

  6. 获取文字规则 todo

  7. 获取图片地址规则 todo

  8. 获取章节地址规则 todo

三 规则实战 持续增加

  1. 规则实战其一:知乎日报 已完成

  2. 规则实战其二:17K小说网 已完成

亦搜规则

update mainfest on push

用于APP内的网络导入,可以是单个规则,也可以是合并后的规则。欢迎成为协作者或者提交pr参与规则编写。

merge.sh是自动合并脚本,mainfest 是合并后的规则,链接:

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

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

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

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

地址规则

请用源编辑界面地址模版

@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)

About

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

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 100.0%