书源制作教程

从2.18.120813开始增加了新的规则写法

支持XPath语法,以@XPath:开头,语法见 http://www.w3school.com.cn/xpath/index.asp

XPath语法测试 http://www.bejson.com/testtools/xpath/ 写书源时可用

支持JSonPath语法,以@JSon:开头,语法见 https://blog.csdn.net/koflance/article/details/63262484

JsonPath获取字符支持此种写法xxx{$._id}yyy{$.chapter}zzz

JSonPath语法测试 http://jsonpath.herokuapp.com 写书源时可用

支持用js处理结果,以@js:开头,结果变量为result 如 "@JSon:$.link@js:"http://chapterup.zhuishushenqi.com/chapter/" + encodeURIComponent(result)"

注意 JSon的值如果不是String,用js处理时需自己进行类型转换

注意 #替换规则在新语法下无法使用,新的语法用js处理结果,

原有的规则不变,见下方

书源规则说明

书源规则基于HTML标记,如class,id,tag等

想要写规则先要打开网页源代码,在里面找到想要获取内容对应的标签,

Chrome可以在网页上右击点击检查可以方便的查看标签

基本写法

@为分隔符,用来分隔获取规则

每段规则可分为3段

第一段是类型,如class,id,tag,text,children等, children获取所有子标签,不需要第二段和第三段,text可以根据文本内容获取

第二段是名称,text. 第二段为文本内容的一部分

第三段是位置,class,tag会获取到多个,所以要加位置,id类型不要加

如不加位置会获取所有

位置正数从0开始,0是第一个,如为负数则是取倒数的值,-1为最倒数第一个,-2为倒数第二个

!是排除,有些位置不符合需要排除用!,后面的序号用:隔开0是第1个,负数为倒数序号,-1最后一个,-2倒数第2个,依次

获取列表的最前面加上负号- 可以使列表倒置,有些网站目录列表是倒的,前面加个负号可变为正的

@的最后一段为获取内容,如text,textNodes,href,src,html等

如果有不同网页的规则可以用 | 或 & 分隔 或 %

|会以第一个取到值的为准,

& 会合并所有规则取到的值,

% 会依次取数,如三个列表,先取列表1的第一个,再取列表2的第一个,再取列表3的第一个,再取列表1的第2个.......

如需要正则替换在最后加上 #正则表达式#替换为

例:class.odd.0@tag.a.0@text|tag.dd.0@tag.h1@text#全文阅读

例:class.odd.0@tag.a.0@text&tag.dd.0@tag.h1@text#全文阅读

BookSourceUrl 书源网址

BookSourceName 书源名称

BookSourceGroup 书源分组

RuleSearchUrl 搜索网址

例:http://www.gxwztv.com/search.htm?keyword=searchKey&pn=searchPage-1

?为get @为post

searchKey为关键字标识,运行时会替换为搜索关键字,

searchPage,searchPage-1为搜索页数,从0开始的用searchPage-1,

page规则还可以写成{index(第一页), indexSecond(第二页), indexThird(第三页), index-searchPage+1 或 index-searchPage-1 或 index-searchPage}

要添加转码编码在最后加 |char=gbk

|char=escape 会模拟js escape方法进行编码

ruleFindUrl 发现规则

发现规则分为两段,名称和url用::分开,如

起点风云榜::https://www.qidian.com/rank/yuepiao?page=searchPage

url规则和搜索规则一样,多个规则用&&或换行分开,如

起点风云榜::https://www.qidian.com/rank/yuepiao?page=searchPage&&原创风云榜::https://www.qidian.com/rank/yuepiao?style=1&page=searchPage

也可以每行写一个,域名可以省略,如省略会调用书源域名

起点风云榜::/rank/yuepiao?page=searchPage

原创风云榜::/rank/yuepiao?style=1&page=searchPage

RuleSearchList 搜索列表

例:class.list-group-item!0:%

RuleSearchAuthor 搜索里的作者

例:class.col-xs-2.0@text

RuleSearchKind 搜索里的类型

例:class.col-xs-1.0@text

RuleSearchLastChapter 搜索里的最新章节

例:class.col-xs-4.0@tag.a.0@text

RuleSearchName 获取搜索里的书名

例:class.col-xs-3.0@tag.a.0@text

RuleSearchNoteUrl 搜索里的书链接

例:class.col-xs-3.0@tag.a.0@href

RuleSearchCoverUrl 搜索里的书封面

例:tag.img.0@src

RuleBookUrlPattern 书籍页面里的URL正则

例:https?://www.piaotian.com/bookinfo/.*"

RuleBookName 书籍页面里的书名称

例:class.active.0@text

RuleBookAuthor 书籍页面里的作者

例:class.col-xs-12.0@tag.small.0@text

RuleIntroduce 书籍页面里的简介

例:class.panel panel-default mt20.0@id.shot@text

RuleCoverUrl 书籍页面里的封面

例:class.panel-body.0@class.img-thumbnail.0@src

RuleBookKind 书籍页面里的分类

例:id.centerm@tag.td.3@text#.*:

RuleBookLastChapter 书籍页面里的最新章节

class.grid.0@tag.td.0@tag.a@text

RuleChapterUrl 书籍页面里的目录地址

如果目录地址和书籍地址一样则留空

例:class.list-group-item tac.0@tag.a.0@href

RuleChapterUrlNext 目录页面里的下一页目录地址

如果没有下一页则留空

例:class.page.0@text.下一页.0@href 也可以获取所有目录页url的列表,会依次获取

例:class.chapter.0@tag.a@href (class.chapter.0)里包含第1页第2页第三页等

RuleChapterList 目录页面的目录列表

前面加 - 号倒序排列

例:id.chapters-list@tag.a

例:-id.chapters-list@tag.a

RuleChapterName 目录列表的章节名称

例:text

RuleContentUrl 目录列表的章节链接

例:href

RuleBookContent 章节内容

例:id.txtContent@textNodes

如需获取AJAX动态内容前面加$

例:$id.txtContent@textNodes

下面是最新的书源模板

{
 "bookSourceGroup": "书源分组",
  "bookSourceName": "书源名称",
  "bookSourceUrl": "书源URL",
  "enable": true,
  "httpUserAgent": "httpuseragent",
 "loginUrl": "登陆URL",
 "ruleBookAuthor": "作者规则",
 "ruleBookContent": "正文规则",
 "ruleBookKind": "分类规则",
 "ruleBookLastChapter": "最新章节规则",
 "ruleBookName": "书名规则",
 "ruleBookUrlPattern": "书籍详情URL正则",
 "ruleChapterList": "目录列表规则",
 "ruleChapterName": "章节名称规则",
 "ruleChapterUrl": "目录URL规则",
 "ruleChapterUrlNext": "目录下一页规则",
 "ruleContentUrl": "章节URL规则",
 "ruleContentUrlNext": "正文下一页URL规则",
 "ruleCoverUrl": "封面规则",
 "ruleFindUrl": "发现规则",
 "ruleIntroduce": "简介规则",
 "ruleSearchAuthor": "搜索结果作者规则",
 "ruleSearchCoverUrl": "搜索结果封面规则",
 "ruleSearchKind": "搜索结果分类规则",
 "ruleSearchLastChapter": "搜索结果最新章节规则",
 "ruleSearchList": "搜索结果列表规则",
 "ruleSearchName": "搜索结果书名规则",
 "ruleSearchNoteUrl": "搜索结果书籍URL规则",
 "ruleSearchUrl": "搜索地址",
 "serialNumber": 0,
 "weight": 0
 }

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,088评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,715评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,361评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,099评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 60,987评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,063评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,486评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,175评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,440评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,518评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,305评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,190评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,550评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,880评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,152评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,451评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,637评论 2 335

推荐阅读更多精彩内容