@ -3,305 +3,371 @@
< head >
< meta charset = "UTF-8" >
< title > 书源编辑器v3.8< / title >
< link rel = "stylesheet" type = "text/css" href = "/index.css" / >
< title > 阅读3.0书源编辑器_V4.0< / title >
< link rel = "icon" href = "favicon.ico" >
< link rel = "stylesheet" type = "text/css" href = "index.css" / >
< / head >
< body >
< div class = "editor" >
< div class = "setbox" >
< div class = "rules" >
< div > < b > 书源基础信息< / b > < / div >
< div >
< div > 书源名称:< / div >
< textarea rows = "1" id = "bookSourceName" placeholder = "书源名称(bookSourceName) | 会显示在书源列表" > < / textarea >
< / div >
< div >
< div > 书源分组:< / div >
< textarea rows = "1" id = "bookSourceGroup" placeholder = "书源分组(bookSourceGroup) | 描述书源的特征信息" > < / textarea >
< / div >
< div >
< div > 书源域名:< / div >
< textarea rows = "1" id = "bookSourceUrl"
placeholder="书源URL(bookSourceUrl) | 通常填写网站主页(标头不可省略),例: https://www.qidian.com">< / textarea >
< / div >
< div >
< div > 登录网页:< / div >
< textarea rows = "1" id = "loginUrl" placeholder = "登录URL(loginUrl) | 填写网站登录网址,仅在需要登录的书源有用" > < / textarea >
< / div >
< div > < b > 书籍发现规则< / b > < / div >
< div >
< div > 发现菜单:< / div >
< textarea rows = "5" id = "ruleFindUrl"
placeholder="发现分类菜单规则(ruleFindUrl),将显示在发现菜单 每行一条发现分类(网址域名可省略): 名称1::网址(Url)1 名称2::网址(Url)2 ...">< / textarea >
< / div >
< div >
< div > 结果列表:< / div >
< textarea rows = "1" id = "ruleFindList"
placeholder="发现页列表规则(ruleFindList) | 选择书籍节点 (规则结果为List< Element> )">< / textarea >
< / div >
< div >
< div > 书籍名称:< / div >
< textarea rows = "1" id = "ruleFindName"
placeholder="发现页书名规则(ruleFindName) | 选择节点书名 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 书籍作者:< / div >
< textarea rows = "1" id = "ruleFindAuthor"
placeholder="发现页作者规则(ruleFindAuthor) | 选择节点作者 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 书籍分类:< / div >
< textarea rows = "1" id = "ruleFindKind"
placeholder="发现页分类规则(ruleFindKind) | 选择节点分类信息 (规则结果为List< String> )">< / textarea >
< / div >
< div >
< div > 最新章节:< / div >
< textarea rows = "1" id = "ruleFindLastChapter"
placeholder="发现页最新章节规则(ruleFindLastChapter) | 选择节点最新章节 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 简介内容:< / div >
< textarea rows = "1" id = "ruleFindIntroduce"
placeholder="发现页简介规则(ruleFindIntroduce) | 选择节点书籍简介 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 封面链接:< / div >
< textarea rows = "1" id = "ruleFindCoverUrl"
placeholder="发现页封面规则(ruleFindCoverUrl) | 选择节点书籍封面 (规则结果为Url)">< / textarea >
< / div >
< div >
< div > 详情链接:< / div >
< textarea rows = "1" id = "ruleFindNoteUrl"
placeholder="发现页详情规则(ruleFindNoteUrl) | 选择书籍详情页网址 (规则结果为Url)">< / textarea >
< / div >
< div > < b > 书籍搜索规则< / b > < / div >
< div >
< div > 搜索网址:< / div >
< textarea rows = "1" id = "ruleSearchUrl"
placeholder="搜索网址(ruleSearchUrl) | [域名可省略]/search.php@kw=searchKey|char=utf-8">< / textarea >
< / div >
< div >
< div > 结果验证:< / div >
< textarea rows = "1" id = "ruleBookUrlPattern"
placeholder="搜索页URL验证(ruleBookUrlPattern) | 正则验证URL是否为详情页,成功则跳过搜索页解析">< / textarea >
< / div >
< div >
< div > 结果列表:< / div >
< textarea rows = "1" id = "ruleSearchList"
placeholder="搜索页列表规则(ruleSearchList) | 选择书籍节点 (规则结果为List< Element> )">< / textarea >
< / div >
< div >
< div > 书籍名称:< / div >
< textarea rows = "1" id = "ruleSearchName"
placeholder="搜索页书名规则(ruleSearchName) | 选择节点书名 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 书籍作者:< / div >
< textarea rows = "1" id = "ruleSearchAuthor"
placeholder="搜索页作者规则(ruleSearchAuthor) | 选择节点作者 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 书籍分类:< / div >
< textarea rows = "1" id = "ruleSearchKind"
placeholder="搜索页分类规则(ruleSearchKind) | 选择节点分类信息 (规则结果为List< String> )">< / textarea >
< / div >
< div >
< div > 最新章节:< / div >
< textarea rows = "1" id = "ruleSearchLastChapter"
placeholder="搜索页最新章节规则(ruleSearchLastChapter) | 选择节点最新章节 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 简介内容:< / div >
< textarea rows = "1" id = "ruleSearchIntroduce"
placeholder="搜索页简介规则(ruleSearchIntroduce) | 选择节点书籍简介 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 封面链接:< / div >
< textarea rows = "1" id = "ruleSearchCoverUrl"
placeholder="搜索页封面规则(ruleSearchCoverUrl) | 选择节点书籍封面 (规则结果为Url)">< / textarea >
< / div >
< div >
< div > 详情链接:< / div >
< textarea rows = "1" id = "ruleSearchNoteUrl"
placeholder="搜索页详情规则(ruleSearchNoteUrl) | 选择书籍详情页网址 (规则结果为Url)">< / textarea >
< / div >
< div > < b > 书籍详情规则< / b > < / div >
< div >
< div > 页面处理:< / div >
< textarea rows = "1" id = "ruleBookInfoInit"
placeholder="详情页信息预处理(ruleBookInfoInit) | 用于加速详情信息检索">< / textarea >
< / div >
< div >
< div > 书籍名称:< / div >
< textarea rows = "1" id = "ruleBookName"
placeholder="书名规则(ruleBookName) | 选择详情页书名 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 书籍作者:< / div >
< textarea rows = "1" id = "ruleBookAuthor"
placeholder="作者规则(ruleBookAuthor) | 选择详情页作者 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 书籍分类:< / div >
< textarea rows = "1" id = "ruleBookKind"
placeholder="分类规则(ruleBookKind) | 选择详情页分类信息 (规则结果为List< String> )">< / textarea >
< / div >
< div >
< div > 最新章节:< / div >
< textarea rows = "1" id = "ruleBookLastChapter"
placeholder="最新章节规则(ruleBookLastChapter) | 选择详情页最新章节 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 简介内容:< / div >
< textarea rows = "1" id = "ruleIntroduce"
placeholder="简介规则(ruleIntroduce) | 选择详情页书籍简介 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 封面链接:< / div >
< textarea rows = "1" id = "ruleCoverUrl" placeholder = "封面规则(ruleCoverUrl) | 选择详情页书籍封面 (规则结果为Url)" > < / textarea >
< / div >
< div >
< div > 目录链接:< / div >
< textarea rows = "1" id = "ruleChapterUrl"
placeholder="目录URL规则(ruleChapterUrl) | 选择目录页网址 (规则结果为Url, 与详情页相同时可省略)">< / textarea >
< / div >
< div > < b > 目录列表规则< / b > < / div >
< div >
< div > 目录翻页:< / div >
< textarea rows = "1" id = "ruleChapterUrlNext"
placeholder="目录下一页规则(ruleChapterUrlNext) | 选择目录下一页链接 (规则结果为List< Url> )">< / textarea >
< / div >
< div >
< div > 目录列表:< / div >
< textarea rows = "1" id = "ruleChapterList"
placeholder="目录列表规则(ruleChapterList) | 选择目录列表的章节节点 (规则结果为List< Element> )">< / textarea >
< / div >
< div >
< div > 章节名称:< / div >
< textarea rows = "1" id = "ruleChapterName"
placeholder="章节名称规则(ruleChapterName) | 选择章节名称 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 章节链接:< / div >
< textarea rows = "1" id = "ruleContentUrl"
placeholder="章节URL规则(ruleContentUrl) | 选择章节链接 (规则结果为Url)">< / textarea >
< / div >
< div > < b > 正文阅读规则< / b > < / div >
< div >
< div > 章节正文:< / div >
< textarea rows = "1" id = "ruleBookContent"
placeholder="正文规则(ruleBookContent) | 选择正文内容 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 正文翻页:< / div >
< textarea rows = "1" id = "ruleContentUrlNext"
placeholder="正文翻页URL规则(ruleContentUrlNext) | 选择下一分页(不是下一章)链接 (规则结果为Url)">< / textarea >
< / div >
< div > < b > 其它规则< / b > < / div >
< div >
< div > 浏览标识:< / div >
< textarea rows = "1" id = "httpUserAgent"
placeholder="浏览器UA(HttpUserAgent) | 浏览器标识:User-Agent (可选)">< / textarea >
< / div >
< div >
< div > 排序编号:< / div >
< textarea rows = "1" id = "serialNumber" placeholder = "整数: 0~N (可选,默认0) | 数字越小越靠前" > < / textarea >
< / div >
< div >
< div > 搜索权重:< / div >
< textarea rows = "1" id = "weight" placeholder = "整数: 0~N (可选,默认0) | 数字越大越靠前" > < / textarea >
< / div >
< div >
< div > 是否启用:< / div >
< textarea rows = "1" id = "enable" placeholder = "默认启用=true,手动启用=false (可选,默认true)" > < / textarea >
< div class = "editor" >
< div class = "setbox" >
< div class = "rules" >
< div > < b > 基本< / b > < / div >
< div >
< div > 源URL :< / div >
< textarea rows = "1" id = "bookSourceUrl" class = "base" title = "bookSourceUrl"
placeholder="< 必填 > 通常填写网站主页,例: https://www.qidian.com">< / textarea >
< / div >
< div >
< div > 源类型 :< / div >
< textarea rows = "1" id = "bookSourceType" class = "base" title = "bookSourceType"
placeholder="< 必填> 0:文本 1:音频">< / textarea >
< / div >
< div >
< div > 源名称 :< / div >
< textarea rows = "1" id = "bookSourceName" class = "base" title = "bookSourceName"
placeholder="< 必填> 会显示在书源列表">< / textarea >
< / div >
< div >
< div > 源分组 :< / div >
< textarea rows = "1" id = "bookSourceGroup" class = "base" title = "bookSourceGroup"
placeholder="< 选填> 描述书源的特征信息">< / textarea >
< / div >
< div >
< div > 登录地址:< / div >
< textarea rows = "1" id = "loginUrl" class = "base" title = "loginUrl"
placeholder="< 选填> 填写网站登录网址,仅在需要登录的书源有用">< / textarea >
< / div >
< div >
< div > 链接验证:< / div >
< textarea rows = "1" id = "bookUrlPattern" class = "base" title = "bookUrlPattern"
placeholder="< 选填> 当详情页URL与源URL的域名不一致时有效,用于添加网址">< / textarea >
< / div >
< div >
< div > 请求头 :< / div >
< textarea rows = "3" id = "header" class = "base" title = "header" placeholder = "<选填>客户端标识" > < / textarea >
< / div >
< p > < / p >
< div > < b > 搜索< / b > < / div >
< div >
< div > 搜索地址:< / div >
< textarea rows = "1" id = "searchUrl" class = "base" title = "searchUrl"
placeholder="[域名可省略]/search.php@kw={{key}}">< / textarea >
< / div >
< div >
< div > 列表规则:< / div >
< textarea rows = "3" id = "ruleSearch_bookList" class = "ruleSearch" title = "bookList"
placeholder="选择书籍节点 (规则结果为List< Element> )">< / textarea >
< / div >
< div >
< div > 书名规则:< / div >
< textarea rows = "1" id = "ruleSearch_name" class = "ruleSearch" title = "name"
placeholder="选择节点书名 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 作者规则:< / div >
< textarea rows = "1" id = "ruleSearch_author" class = "ruleSearch" title = "author"
placeholder="选择节点作者 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 分类规则:< / div >
< textarea rows = "1" id = "ruleSearch_kind" class = "ruleSearch" title = "kind"
placeholder="选择节点分类信息 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 字数规则:< / div >
< textarea rows = "1" id = "ruleSearch_wordCount" class = "ruleSearch" title = "wordCount"
placeholder="选择节点字数信息 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 最新章节:< / div >
< textarea rows = "1" id = "ruleSearch_lastChapter" class = "ruleSearch" title = "lastChapter"
placeholder="选择节点最新章节 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 简介规则:< / div >
< textarea rows = "1" id = "ruleSearch_intro" class = "ruleSearch" title = "intro"
placeholder="选择节点书籍简介 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 封面规则:< / div >
< textarea rows = "1" id = "ruleSearch_coverUrl" class = "ruleSearch" title = "coverUrl"
placeholder="选择节点书籍封面 (规则结果为String类型的url)">< / textarea >
< / div >
< div >
< div > 详情地址:< / div >
< textarea rows = "1" id = "ruleSearch_bookUrl" class = "ruleSearch" title = "bookUrl"
placeholder="选择书籍详情页网址 (规则结果为String类型的url)">< / textarea >
< / div >
< p > < / p >
< div > < b > 发现< / b > < / div >
< div >
< div > 发现地址:< / div >
< textarea rows = "6" id = "exploreUrl" class = "base" title = "exploreUrl"
placeholder="内容能显示在发现菜单 每行一条发现分类(网址域名可省略),例: 名称1::网址(Url)1 名称2::网址(Url)2 ...">< / textarea >
< / div >
< div >
< div > 列表规则:< / div >
< textarea rows = "1" id = "ruleExplore_bookList" class = "ruleExplore" title = "bookList"
placeholder="选择书籍节点 (规则结果为List< Element> )">< / textarea >
< / div >
< div >
< div > 书名规则:< / div >
< textarea rows = "1" id = "ruleExplore_name" class = "ruleExplore" title = "name"
placeholder="选择节点书名 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 作者规则:< / div >
< textarea rows = "1" id = "ruleExplore_author" class = "ruleExplore" title = "author"
placeholder="选择节点作者 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 分类规则:< / div >
< textarea rows = "1" id = "ruleExplore_kind" class = "ruleExplore" title = "kind"
placeholder="选择节点分类信息 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 字数规则:< / div >
< textarea rows = "1" id = "ruleExplore_wordCount" class = "ruleExplore" title = "wordCount"
placeholder="选择节点字数信息 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 最新章节:< / div >
< textarea rows = "1" id = "ruleExplore_lastChapter" class = "ruleExplore" title = "lastChapter"
placeholder="选择节点最新章节 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 简介规则:< / div >
< textarea rows = "1" id = "ruleExplore_intro" class = "ruleExplore" title = "intro"
placeholder="选择节点书籍简介 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 封面规则:< / div >
< textarea rows = "1" id = "ruleExplore_coverUrl" class = "ruleExplore" title = "coverUrl"
placeholder="选择节点书籍封面 (规则结果为String类型的url)">< / textarea >
< / div >
< div >
< div > 详情地址:< / div >
< textarea rows = "1" id = "ruleExplore_bookUrl" class = "ruleExplore" title = "bookUrl"
placeholder="选择书籍详情页网址 (规则结果为String类型的url)">< / textarea >
< / div >
< p > < / p >
< div > < b > 详情< / b > < / div >
< div >
< div > 预处理 :< / div >
< textarea rows = "3" id = "ruleBookInfo_init" class = "ruleBookInfo" title = "init"
placeholder="用于加速详情信息检索,只支持AllInOne规则">< / textarea >
< / div >
< div >
< div > 书名规则:< / div >
< textarea rows = "1" id = "ruleBookInfo_name" class = "ruleBookInfo" title = "name"
placeholder="选择节点书名 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 作者规则:< / div >
< textarea rows = "1" id = "ruleBookInfo_author" class = "ruleBookInfo" title = "author"
placeholder="选择节点作者 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 分类规则:< / div >
< textarea rows = "1" id = "ruleBookInfo_kind" class = "ruleBookInfo" title = "kind"
placeholder="选择节点分类信息 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 字数规则:< / div >
< textarea rows = "1" id = "ruleBookInfo_wordCount" class = "ruleBookInfo" title = "wordCount"
placeholder="选择节点字数信息 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 最新章节:< / div >
< textarea rows = "1" id = "ruleBookInfo_lastChapter" class = "ruleBookInfo" title = "lastChapter"
placeholder="选择节点最新章节 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 简介规则:< / div >
< textarea rows = "1" id = "ruleBookInfo_intro" class = "ruleBookInfo" title = "intro"
placeholder="选择节点书籍简介 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 封面规则:< / div >
< textarea rows = "1" id = "ruleBookInfo_coverUrl" class = "ruleBookInfo" title = "coverUrl"
placeholder="选择节点书籍封面 (规则结果为String类型的url)">< / textarea >
< / div >
< div >
< div > 目录地址:< / div >
< textarea rows = "1" id = "ruleBookInfo_tocUrl" class = "ruleBookInfo" title = "tocUrl"
placeholder="选择书籍详情页网址 (规则结果为String类型的url, 与详情页相同时可省略)">< / textarea >
< / div >
< p > < / p >
< div > < b > 目录< / b > < / div >
< div >
< div > 列表规则:< / div >
< textarea rows = "3" id = "ruleToc_chapterList" class = "ruleToc" title = "chapterList"
placeholder="选择目录列表的章节节点 (规则结果为List< Element> )">< / textarea >
< / div >
< div >
< div > 章节名称:< / div >
< textarea rows = "1" id = "ruleToc_chapterName" class = "ruleToc" title = "chapterName"
placeholder="选择章节名称 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 章节地址:< / div >
< textarea rows = "1" id = "ruleToc_chapterUrl" class = "ruleToc" title = "chapterUrl"
placeholder="选择章节链接 (规则结果为String类型的Url)">< / textarea >
< / div >
< div >
< div > 收费标识:< / div >
< textarea rows = "1" id = "ruleToc_isVip" class = "ruleToc" title = "isVip"
placeholder="章节是否为VIP章节 (规则结果为Bool)">< / textarea >
< / div >
< div >
< div > 章节信息:< / div >
< textarea rows = "1" id = "ruleToc_updateTime" class = "ruleToc" title = "updateTime"
placeholder="选择章节信息 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 翻页规则:< / div >
< textarea rows = "1" id = "ruleToc_nextTocUrl" class = "ruleToc" title = "nextTocUrl"
placeholder="选择目录下一页链接 (规则结果为List< String> 或String)">< / textarea >
< / div >
< p > < / p >
< div > < b > 正文< / b > < / div >
< div >
< div > 正文规则:< / div >
< textarea rows = "1" id = "ruleContent_content" class = "ruleContent" title = "content"
placeholder="选择正文内容 (规则结果为String)">< / textarea >
< / div >
< div >
< div > 翻页规则:< / div >
< textarea rows = "1" id = "ruleContent_nextContentUrl" class = "ruleContent" title = "nextContentUrl"
placeholder="选择下一分页(不是下一章)链接 (规则结果为String类型的Url)">< / textarea >
< / div >
< div >
< div > 脚本注入:< / div >
< textarea rows = "3" id = "ruleContent_webJs" class = "ruleContent" title = "webJs"
placeholder="注入javascript,用于模拟鼠标点击等,无返回结果">< / textarea >
< / div >
< div >
< div > 资源正则:< / div >
< textarea rows = "1" id = "ruleContent_sourceRegex" class = "ruleContent" title = "sourceRegex"
placeholder="匹配资源的url特征,用于嗅探">< / textarea >
< / div >
< p > < / p >
< div > < b > 其它规则< / b > < / div >
< div >
< div > 启用搜索:< / div >
< textarea rows = "1" id = "enabled" class = "base" title = "enabled"
placeholder="启用: true 关闭: false (可选,默认true)">< / textarea >
< / div >
< div >
< div > 启用发现:< / div >
< textarea rows = "1" id = "enabledExplore" class = "base" title = "enabledExplore"
placeholder="启用: true 关闭: false (可选,默认true)">< / textarea >
< / div >
< div >
< div > 搜索权重:< / div >
< textarea rows = "1" id = "weight" class = "base" title = "weight"
placeholder="整数: 0~N (可选,默认0) | 数字越大越靠前">< / textarea >
< / div >
< div >
< div > 排序编号:< / div >
< textarea rows = "1" id = "customOrder" class = "base" title = "customOrder"
placeholder="整数: 0~N (可选,默认0) | 数字越小越靠前">< / textarea >
< / div >
< div >
< div > 更新时间:< / div >
< textarea rows = "1" id = "lastUpdateTime" class = "base" title = "lastUpdateTime"
placeholder="整数: 0~N (可选,默认0) | 暂未使用">< / textarea >
< / div >
< / div >
< / div >
< / div >
< div class = "menu" >
< svg class = "button" >
< text x = "50%" y = "55%" > ⇈推送书源< / text >
< rect id = "push" > < / rect >
< / svg >
< svg class = "button" >
< text x = "50%" y = "55%" > ⇊拉取书源< / text >
< rect id = "pull" > < / rect >
< / svg >
< svg class = "button" >
< text x = "50%" y = "55%" > ⋘编辑书源< / text >
< rect id = "editor" > < / rect >
< / svg >
< svg class = "button" >
< text x = "50%" y = "55%" > ⋙生成书源< / text >
< rect id = "conver" > < / rect >
< / svg >
< svg class = "button" >
< text x = "50%" y = "55%" > ✗清空表单< / text >
< rect id = "initial" > < / rect >
< / svg >
< svg class = "button" >
< text x = "50%" y = "55%" > ↶撤销操作< / text >
< rect id = "undo" > < / rect >
< / svg >
< svg class = "button" >
< text x = "50%" y = "55%" > ↷重做操作< / text >
< rect id = "redo" > < / rect >
< / svg >
< svg class = "button" >
< text x = "50%" y = "55%" > ⇏调试书源< / text >
< rect id = "debug" > < / rect >
< / svg >
< svg class = "button" >
< text x = "50%" y = "55%" > ✓保存书源< / text >
< rect id = "accept" > < / rect >
< / svg >
< / div >
< div class = "outbox" >
< div class = "tabbox" >
< div class = "tabtitle" >
< div name = "编辑书源" class = "tab1 this" > 编辑书源< / div >
< div name = "调试书源" class = "tab2" > 调试书源< / div >
< div name = "书源列表" class = "tab3" > 书源列表< / div >
< div name = "帮助信息" class = "tab4" > 帮助信息< / div >
< / div >
< div class = "tabbody" >
< div class = "tab1 this" >
< textarea class = "context" id = "RuleJsonString" placeholder = "这里输出序列化的JSON数据,可直接导入'阅读'APP" > < / textarea >
< / div >
< div class = "tab2" >
< input type = "text" class = "inputbox" id = "DebugKey" placeholder = "我的" >
< textarea class = "context" id = "DebugConsole" placeholder = "这里用于输出调试信息" > < / textarea >
< / div >
< div class = "tab3" >
< div class = "titlebar" >
< button id = "Import" > 导入书源文件< / button >
< button id = "Export" > 导出书源文件< / button >
< button id = "Delete" > 删除选中书源< / button >
< button id = "ClrAll" > 清空当前列表< / button >
< div class = "menu" >
< svg class = "button" >
< text x = "50%" y = "55%" > ⇈推送书源< / text >
< rect id = "push" > < / rect >
< / svg >
< svg class = "button" >
< text x = "50%" y = "55%" > ⇊拉取书源< / text >
< rect id = "pull" > < / rect >
< / svg >
< svg class = "button" >
< text x = "50%" y = "55%" > ⋘编辑书源< / text >
< rect id = "editor" > < / rect >
< / svg >
< svg class = "button" >
< text x = "50%" y = "55%" > ⋙生成书源< / text >
< rect id = "conver" > < / rect >
< / svg >
< svg class = "button" >
< text x = "50%" y = "55%" > ✗清空表单< / text >
< rect id = "initial" > < / rect >
< / svg >
< svg class = "button" >
< text x = "50%" y = "55%" > ↶撤销操作< / text >
< rect id = "undo" > < / rect >
< / svg >
< svg class = "button" >
< text x = "50%" y = "55%" > ↷重做操作< / text >
< rect id = "redo" > < / rect >
< / svg >
< svg class = "button" >
< text x = "50%" y = "55%" > ⇏调试书源< / text >
< rect id = "debug" > < / rect >
< / svg >
< svg class = "button" >
< text x = "50%" y = "55%" > ✓保存书源< / text >
< rect id = "accept" > < / rect >
< / svg >
< / div >
< div class = "outbox" >
< div class = "tabbox" >
< div class = "tabtitle" >
< div name = "编辑书源" class = "tab1 this" > 编辑书源< / div >
< div name = "调试书源" class = "tab2" > 调试书源< / div >
< div name = "书源列表" class = "tab3" > 书源列表< / div >
< div name = "帮助信息" class = "tab4" > 帮助信息< / div >
< / div >
< div class = "tabbody" >
< div class = "tab1 this" >
< textarea class = "context" id = "RuleJsonString"
placeholder="这里输出序列化的JSON数据,可直接导入'阅读'APP">< / textarea >
< / div >
< div class = "tab2" >
< input type = "text" class = "inputbox" id = "DebugKey" placeholder = "输入搜索关键字,默认搜「我的」" >
< textarea class = "context" id = "DebugConsole" placeholder = "这里用于输出调试信息" > < / textarea >
< / div >
< div class = "tab3" >
< input type = "text" class = "inputbox" id = "Filter" placeholder = "输入筛选关键词(源名称、源URL或源分组)后按回车筛选源" >
< div class = "titlebar" >
< button id = "Import" > 导入书源文件< / button >
< button id = "Export" > 导出书源文件< / button >
< button id = "Delete" > 删除选中书源< / button >
< button id = "ClrAll" > 清空当前列表< / button >
< / div >
< div class = "context" id = "RuleList" > < / div >
< / div >
< div class = "context" id = "RuleList" > < / div >
< / div >
< div class = "tab4" >
< div class = "context link" >
< a target = "_blank" href = "https://gedoor.github.io/MyBookshelf/sourcerule.html" > 官方书源教程< / a >
< a target = "_blank" href = "https://zhuanlan.zhihu.com/p/29436838" > Xpath基础教程< / a >
< a target = "_blank" href = "https://zhuanlan.zhihu.com/p/32187820" > Xpath高级教程< / a >
< a target = "_blank" href = "https://www.w3cschool.cn/regex_rmjc/?" > 正则表达式教程< / a >
< a target = "_blank" href = "https://regexr.com/" > 正则表达式在线验证工具< / a >
< div > ^$()[]{}.?+*| 这些是Java正则特殊符号,匹配需转义
< br > (?s) 前缀表示跨行解析
< br > (?m) 前缀表示逐行匹配
< br > (?i) 前缀表示忽略大小写
< div class = "tab4" >
< div class = "context link" >
< a target = "_blank" href = "https://celeter.github.io" > 源制作教程< / a >
< a target = "_blank" href = "https://zhuanlan.zhihu.com/p/29436838" > Xpath基础教程< / a >
< a target = "_blank" href = "https://zhuanlan.zhihu.com/p/32187820" > Xpath高级教程< / a >
< a target = "_blank" href = "https://www.w3cschool.cn/regex_rmjc/?" > 正则表达式教程< / a >
< a target = "_blank" href = "https://regexr.com/" > 正则表达式在线验证工具< / a >
< div > ^$()[]{}.?+*| 这些是Java正则特殊符号,匹配需转义
< br > (?s) 前缀表示跨行解析
< br > (?m) 前缀表示逐行匹配
< br > (?i) 前缀表示忽略大小写
< / div >
< a target = "_blank" href = "https://www.beta.browxy.com/" > 代码在线运行工具< / a >
< a target = "_blank" href = "bookshelf.html" > 阅读书架(经典)< / a >
< a target = "_blank" href = "new/bookshelf.html" > 阅读书架(新潮)< / a >
< / div >
< a target = "_blank" href = "https://www.beta.browxy.com/" > 代码在线运行工具< / a >
< a target = "_blank" href = "/bookshelf.html" > 阅读书架(测试)< / a >
< / div >
< / div >
< / div >
< / div >
< / div >
< / div >
< script type = "text/javascript" src = "/index.js" > < / script >
< script type = "text/javascript" src = "index.js" > < / script >
< / body >
< / html >