# Reader **Repository Path**: n3rddd/reader ## Basic Information - **Project Name**: Reader - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 5 - **Created**: 2024-10-10 - **Last Updated**: 2024-10-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 奇点阅读 #### 介绍 1) 支持自定义书源,点播源,直播源。兼容小熊播放器的源,可以直接导入看视频。 2) 自定义规则支持CSS选择器、XPath选择器、JSONPath 3) 兼容安卓阅读App书源,https://www.yckceo.com/yuedu/shuyuan/index.html 这个网站非常慢,会超时导致失败,可以复制内容后从文本导入。或下载后从文件导入。不要导入集合,几百条源并发搜索手机会卡死,总源数量不建议超过30个。 4) 部分加密的小说不支持,规则兼容上有一些调整,可以修改后导入。 5) 浏览器是强力去广告的,比夸克强,但是某些网站可能会误伤,只适合用来通过浏览器看小说,看视频 6) 直播不支持添加单个频道,只能订阅维护好的播放列表推荐使用fmm的ipv6的源 ```https://live.fanmingming.com/tv/m3u/ipv6.m3u``` 7) 书源导入的示例如下,书源管理-从网址导入 ```https://gitee.com/workair/reader/raw/master/demo.json``` #### CSS选择器 1) id选择: #id@text 2) class选择 .class.0@text 或 .class!0@text .0表示选择第一个匹配项,!0表示排除第一个选择项,自定义匹配多个索引用冒号隔开。比如.class.0:1:2@text 表示选择索引1/2/3项 @后面表示属性可以是text,href,html及自定义属性 取值后支持正则替换在上面规则后面加正则规则比如 .class.0@text##abc##def 表示把abc替换成def,支持正则中$符号替换 某些复杂的带索引的部分选择器不支持 3) 支持按属性选择,适合采集head中的数据比如head > meta[property=\"og:description\"]@content #### XPath选择器/JSONPath选择器 请参考官方文档 #### 书源格式 有能力的可以看下面的说明,自己写规则 规则编写QQ讨论群:542924576 有一手无广告视频网站的也可以进去讨论 ``` { "name":"名称", "api":"BaseURL,如果末尾有/规则中url开头就不要有/", "type":2 "searchable":false, "categories":[ {"name":"分类1","url":"/xxx/yyy"}, {"name":"分类2","url":"/xxx/yyy"} ], "list":{ "list":"选择列表", "name":"标题", "tips":"最后更新章节/剧集", "rate":"评分", "doubanId": "豆瓣id", "doubanUrl": "豆瓣url", "coverUrl": "封面url", "detailUrl": "详情url", "params": "{\"id\":{{z-cover@id}}}", }, "search":{ "url":"搜索页url", "post":"如果是post这里是post内容", "list":"选择列表", "name":"标题", "author","作者", "tips":"最后更新章节/剧集", "rate":"评分", "doubanId": "豆瓣id", "doubanUrl": "豆瓣url", "coverUrl": "封面url", "detailUrl": "详情url", "params": "{\"id\":{{z-cover@id}}}", }, "detail":{ "meta":"简介", "content":"小说正文,如果是漫画则是图片url列表,视频不需要", "intro": "小说简介", "tocUrl": "类目url" }, "toc": { "list": "小说章节列表", "name": "名称", "url": "url" }, "line": { "list": "视频线路标题列表", "name": "名称", "contentList": "视频线路内容列表", "selected":["如果只需要采集个别线路,这里用数组匹配"] } "play": { "list": "视频播放列表", "name": "名称", "url": "url" }, "header":{ "token":"整个header可以放http都信息,字段不限" } "login":{ "url":"有些网站需要登录获取cookie才可以用,这里写登录地址,会有一个按钮可以跳转到网站去登录,登录后返回就可以正常用了,比如z-library", "cookie": true } } ``` type: 没有默认vod资源 2:视频 10:小说 12:漫画 20:下载电子书txt/epub,适用于z-library 规则主要分为以下几个部分 1) categories: 发现的分类列表,如果不需要这个功能,这个规则可以没有。 2) detail: 小说或视频详情页规则 3) search: 搜索页规则 4) list: 列表页规则,如归规则和搜索页一样,这个规则页可以没有,默认使用搜索页规则 5) toc: 小说章节规则 6) line: 视频线路规则,如果网站不是聚合视频网站就一个线路,这个规则可以没有 7) play: 播放列表规则 8) header: 这里可以放http头信息,比如cookie,token等 9) login: 有些网站需要登录获取cookie的 凡没有的规则就不要出现,不要填写空白字符串 list或searh中的params是一个json参数,可以把列表的数据传入到详情规则或章节规则的url中 规则支持{{}}格式的模板 #### 订阅源格式 按下面格式保存成json,放服务器上,就可以用app里的订阅模式订阅这个地址。 ``` { "lives": [ { "name": "FMM-IPV6", "api": "https://live.fanmingming.com/tv/m3u/ipv6.m3u" }, { "name": "直播源2", "api": "直播源2地址" } ], "sites": [{书源1},{书源2}...] } ```