源字段速查 (Source Fields)
本文档列出源 JSON 中各部分(搜索、发现、详情页、目录、正文)的所有可用字段。
1. 基本字段
| 字段 | 必须 | 说明 |
|---|---|---|
bookSourceUrl | 是 | 源 URL,唯一标识,不可重复。与其他源相同会覆盖 |
bookSourceName | 是 | 源名称,可重复 |
bookSourceGroup | 否 | 源分组,用于整理 |
bookSourceType | 否 | 源类型:0(文本,默认)、1(音频) |
bookUrlPattern | 否 | 书籍 URL 正则,添加网址时用于识别源 |
header | 否 | 请求头 JSON 字符串,见 请求头配置 |
loginUrl | 否 | 登录 URL,见 认证与登录 |
exploreUrl | 否 | 发现地址,见 发现 URL 配置 |
searchUrl | 否 | 搜索地址 |
weight | 否 | 源权重,搜索排序时使用 |
enabled | 否 | 是否启用 |
enabledExplore | 否 | 是否启用发现 |
customOrder | 否 | 自定义排序 |
lastUpdateTime | 否 | 最后更新时间 |
bookSourceComment | 否 | 源备注 |
2. 搜索字段 (ruleSearch)
| 字段 | 说明 |
|---|---|
url | 搜索地址。 为关键字, 为页码 |
bookList | 书籍列表规则 |
name | 书名规则 |
author | 作者规则 |
kind | 分类规则 |
wordCount | 字数规则 |
lastChapter | 最新章节规则 |
intro | 简介规则 |
coverUrl | 封面规则 |
bookUrl | 详情页 URL 规则 |
3. 发现字段 (ruleExplore)
| 字段 | 说明 |
|---|---|
url | 发现地址。 为页码,支持 JSON 数组格式 |
bookList | 书籍列表规则 |
name | 书名规则 |
author | 作者规则 |
kind | 分类规则 |
wordCount | 字数规则 |
lastChapter | 最新章节规则 |
intro | 简介规则 |
coverUrl | 封面规则 |
bookUrl | 详情页 URL 规则 |
4. 详情页字段 (ruleBookInfo)
| 字段 | 说明 |
|---|---|
bookInfoInit | 预处理规则(仅支持 AllInOne 正则或 JS) |
name | 书名规则 |
author | 作者规则 |
kind | 分类规则 |
wordCount | 字数规则 |
lastChapter | 最新章节规则 |
intro | 简介规则 |
coverUrl | 封面规则 |
tocUrl | 目录 URL 规则(仅支持单个 URL) |
canReName | 允许修改书名作者 |
relatedBooks | 关联书籍配置,见 关联书籍配置 |
预处理规则 (bookInfoInit)
只能使用 AllInOne 正则(以 : 开头)或 JS。JS 返回值需为 JSON 对象:
javascript
(function(){
return {
a: "书名",
b: "作者",
c: "分类",
d: "字数",
e: "最新章节",
f: "简介",
g: "封面URL",
h: "目录URL"
};
})()此时各规则字段填对应的 key:name → a,author → b,以此类推。
canReName 逻辑
| 条件 | 行为 |
|---|---|
| 规则不为空 且 详情页书名不为空 | 使用详情页书名 |
| 否则 | 使用搜索页书名 |
| 规则不为空 且 详情页作者不为空 | 使用详情页作者 |
| 否则 | 使用搜索页作者 |
5. 目录字段 (ruleToc)
| 字段 | 说明 |
|---|---|
chapterList | 目录列表规则。首字符 - 可使列表反序 |
chapterName | 章节名称规则 |
chapterUrl | 章节 URL 规则 |
isVip | VIP 标识。结果为 null、false、0、"" 时为非 VIP |
updateTime | 章节信息(可用 java.timeFormat(timestamp) 转换时间戳) |
nextTocUrl | 目录下一页规则。支持单个 URL、URL 数组,JS 返回 []/null/"" 时停止 |
6. 正文字段 (ruleContent)
| 字段 | 说明 |
|---|---|
content | 正文规则 |
nextContentUrl | 正文下一页 URL 规则。支持单个 URL、URL 数组 |
sourceRegex | 资源正则,用于嗅探媒体资源 |
webJs | WebView JS,用于模拟点击等操作。必须有返回值(不为空表示执行成功) |
WebView JS (webJs)
用于模拟鼠标点击等操作,返回值不为空表示执行成功(否则会无限循环),返回值用于资源正则或正文。
示例:
javascript
getDecode();$('#content').html();资源正则 (sourceRegex)
用于嗅探 WebView 加载的媒体资源。配合章节 URL 的 {"webView": true} 使用。
一般写 .*\.(mp3|mp4).* 即可匹配常见媒体格式。
7. 完整 JSON 结构
json
{
"bookSourceUrl": "https://www.example.com",
"bookSourceName": "示例源",
"bookSourceGroup": "分组",
"bookSourceType": 0,
"bookUrlPattern": "",
"header": "",
"loginUrl": "",
"searchUrl": "/search?key={{key}}&page={{page}}",
"exploreUrl": "",
"enabled": true,
"enabledExplore": false,
"weight": 0,
"ruleSearch": {
"bookList": "",
"name": "",
"author": "",
"kind": "",
"wordCount": "",
"lastChapter": "",
"intro": "",
"coverUrl": "",
"bookUrl": ""
},
"ruleExplore": {
"bookList": "",
"name": "",
"author": "",
"bookUrl": ""
},
"ruleBookInfo": {
"name": "",
"author": "",
"kind": "",
"intro": "",
"coverUrl": "",
"tocUrl": ""
},
"ruleToc": {
"chapterList": "",
"chapterName": "",
"chapterUrl": "",
"nextTocUrl": ""
},
"ruleContent": {
"content": "",
"nextContentUrl": "",
"sourceRegex": "",
"webJs": ""
}
}