海阔小程序-聚阅√ 本小程序为空壳小程序,代码为本人学习之用,仅提供聚合框架,不提供任何内容,不承担任何法律责任,特此声明! 一、主页源代码相关知识点 公共代码可以直接调用,其他新开页面可以用传递参数的方式,或者用子页面调用的方法 一级主页源的接口如果同时拥有二级接口代码,则一级的d.url需要传二级链接地址,这样进二级时会自动打开当前接口的二级数据,否则会进入搜源列表 d结构相关说明如下: d.push({ title: 标题,//轮播图等,标题为空时,则必需要传extra.name desc: 描述, pic_url: 图片, col_type: 样式, url: 链接//如果只有主页源,这里就可以不用传url extra:{//常规可不传extra pageTitle: 二级标题,可以不等于搜索关键字,//可不传 name: 二级换源搜索关键字//可不传,默认取title,title为空时必传 } //如果title不等于片名,则可以单独传extra.name }); 主页源(主页、分类、排行、更新),如果需要自己新开页面时,想默认进入当前接口的二级,可以通过内置方法toerji进行转换 d.forEach(it=>{ it = toerji(it); }) return d; 一级接口源信息获取:let info = storage0.getMyVar('一级源接口信息'); 对象:{name: 接口名, type: 类型, group: 分组} "页码": {"分类":1, "排行":0, "更新":0},//可不传,如果传1则会传fypage,用getParam('page')获取 主页数据如果没有翻页时,应在接口中let d = [];下面写上 if (MY_PAGE > 1) { return d; } "转换": {"排行":"主题"}//可不传,仅支持对排行、分类、更新三个按键转换名称 可以将主页中间三大金刚模块名称转换成想要的,对应代码的属性名和页码中的属性名需使用转换后的新名称 二、搜索源代码相关知识点 搜索关键字取:name,页码取:page 搜索数据如果没有翻页时,应在接口中let d = [];下面写上 if (page > 1) { return d; } 二级页面如果需要变更搜索词,可直接赋值name 搜索的desc如果要写其他内容,则在extra.sdesc传入最新章节名,d其他结构同主页 二级数据返回格式如下 return { //如果有多线路,则传line: 线路数组, 则list应为多线路合并后的数组[线路1选集列表,线路2选集列表] //"detailurl":封面url自己写点击想执行的事件,//可不传 detail1: "‘‘’’"+detail1+"", //封面上面,可自由组合,可用html样式 detail2: "‘‘’’"+detail2+"", //封面下部,可自由组合,可用html样式 //detailextra: {},//封面附加 desc: 简介, img: 图片, //图片不传,则用上一级的图片 //"line": 线路,//单线路可不传 list: 选集, //如果有多线路,则list应为多线路合并后的数组[线路1选集列表,线路2选集列表],选集参考下方的结构,可传单独extra //"listparse": function(线路索引,线路名){写列表解析代码,结后返回选集},//传值代表选集列表需解析,支持点线路时动态获取对应选集 //"page": 分页,//原网站选集列表是分页的,这时需要用,参考下方分页获取逻辑代码 //"pageparse": function (input) {//原网站选集列表是分页的,选集动态获取 let html = request(input, {timeout:8000}); let 选集 = pdfa(html, '.play-list&&li').map((data) => { let 选集列表 = {}; 选集列表.title = pdfh(data, 'a--span--i&&Text') 选集列表.url = pd(data, 'a&&href'); //选集列表.extra = {}; return 选集列表; }) return 选集; }, //"extra":{//选集统一附加,可不传 "blockRules": ['.css'] }, //rule:1,//当接口类型为漫画、影视、音乐等选集解析是lazyRule时,且这个接口又有文章类的内容,可传此值可选集变为rule事件 //noval:1,//当接口类型为漫画、影视、音乐等选集解析是lazyRule时,且这个接口又有小说内容,可传此值,默认rule事件且进入小说模式 //extenditems: []//二级扩展项,可以传任意样式元素对象数组,如猜你所想列表,不传则不显示,或长按样式可关闭 } /*分页获取逻辑代码,仅参考 let 分页 = pdfa(html, '.hd-sel&&option').map((data) => { let 分页列表 = {}; 分页列表.title = pdfh(data, 'option&&Text'); 分页列表.url = pd(data,"option&&value"); return 分页列表; }); */ /*选集列表结构 let 选集 = pdfa(html, '.play-list&&li').map((data) => { let 选集列表 = {}; 选集列表.title = pdfh(data, 'a--span--i&&Text') 选集列表.url = pd(data, 'a&&href'); //选集列表.extra = {test: 1}; return 选集列表; }) */ 三、子页面调用方法说明 当在新开的环境$工具下,一般要么是直接传参进去,或者就是通过子页面取得接口想要的代码 取公共整个代码 let 公共 = $.require('jiekou').公共(标识); 取一级整个代码 let 一级 = $.require('jiekou').一级(); 取二级整个代码 let 二级 = $.require('jiekou').二级(); 取一级的作者 let 作者 = $.require('jiekou').属性(标识,"一级","作者"); 或者 let 作者 = $.require('jiekou').一级().作者; 标识为:类型_接口名 标识在一级、二级、搜索均可直接用,如需要在新开页面调用可通过此取得let info = storage0.getMyVar('一级源接口信息');let 标识 = info.type + "_" + info.name; 如需在解析中取得标识,则参数.标识即可 四、其他技巧 接口分组可以留空,如写上分组名则影响搜索,如留空则搜索时会调用留空+全全的接口,如国漫则搜索会调用分组为国漫+全全的接口 搜索时可以在关键字后面加2个空格指定搜索接口,2个空格后留空则以当前主页源接口作为默认搜索接口 简繁互换内置方法jianfan(str)转为简体,jianfan(str,2)转为繁体 主页长按设置可开启界面切换类型按钮 主页长按分类可进入新搜索页 二级长按切换站源可进入搜索页,搜其他类型、切换二级换源列表是否精准匹配 二级长按样式,可设置统一修正选集标题、是否显示扩展列表项 二级收藏即加入书架,切源站源不影响收藏和书架 二级样式菜单中可开启选集列表分页显示 管理页长按增加可开启调试模式或开启接口日志,建议不开仅源佬需要 管理页长按导入可以切换导入类型,覆盖、跳过、确认 管理页分享时可选分类,或多选,再点右上角分享