XBPQ详细说明.json 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187
  1. {
  2. /**
  3. 1.截取:
  4. *所有截取前后用&&连接,也可用$$(调试助手方式)
  5. *不使用&&表示用指定字符串,如使用固定标题,固定图片,"标题":"正片" "图片":"http://xxx.xxx.com/uplod0034.jpg"
  6. *截取前可以使用通配符*,如<a*>&&</a>,一个字段只能使用一个通配符
  7. 2.包含与不包含:
  8. *截取信息末尾可用中括号附加筛选包含或不包含,用#分隔多个关键词,全部英文符号,例
  9. "分类数组": "class=\"nav\"&&</div>[不包含:首页#资讯]",
  10. *数组筛选除关键词筛选外还可以筛选序号,连续序号用-连接序号之间用#分隔,例
  11. "数组": "class=\"hl-list-item&&</li>[不包含:1#9-11]",
  12. 3.替换:
  13. *可在截取信息末尾用中括号修改替换显示内容,替换与被替换之间用>>分隔,用#分隔多个替换项,替换为汉字空时表示删除被替换词
  14. *被替换词可以用通配符*,比如(*),会替换掉包含括号的左右括号之间的全部字符。替换内容也可以使用*,作用等同于&&截取,表示替换内容从网页获取,例
  15. "线路数组": "class=\"hl-tabs-btn hl-slide-swiper&&</a>[替换:线路1>>腾腾#播放>>空#(*)$空]",
  16. *数组或列表的替换可以使用<序号>来从1开始按顺序编号,如[替换:v>>?ep=<序号>.mp4]
  17. 4.+拼接:
  18. *+号拼接支持指定字符串与截取字符串混合拼接,如:/play/+/vod/&&.html+-1-1.html,表示把/vod/id编号.html拼接成/play/id编号-1-1.html
  19. *可无限拼接
  20. *json模式的指定字符串拼接,需使用英文单引号,如:'/play/'+id+'-1-1.html',表示把从json中获取的id值与前后字符串拼接
  21. 5.指定截取:
  22. *所有字段支持按分类指定截取
  23. *指定方式:默认--a&&b||l连续剧--c&&d||首页--e&&f||搜索--g&&h,未指定的使用第一组,json方式也可以指定;
  24. *首页和搜索也可以指定截取,都在获取分类字段中填写,搜索字段为空或只有"搜索url"时,搜索指定截取才生效
  25. *没有分类的单个文件或网页,可通过在地址后加?{cateId}(如果地址中已经有?,使用&),然后指定截取的方式进行分类展示
  26. *示例:
  27. {
  28. "key": "live直播",
  29. "name": "live直播",
  30. "type": 3,
  31. "playerType": 1,
  32. "api": "csp_XBPQ",
  33. "searchable": 0,
  34. "quickSearch": 0,
  35. "filterable": 0,
  36. "ext": {
  37. "主页url":"./lives/live.txt",
  38. "直接播放":"1",
  39. "链接前缀":"http",
  40. "副标题":"group-title=\"&&\"",
  41. "分类":"央视$1#卫视$2#地方$3",//1,2,3随意编,只要不重复就行
  42. "分类url":"./lives/live.txt?{cateId}",
  43. "二次截取":"央视--\\#\\#央视&&\\#\\#||卫视--\\#\\#卫视&&\\#\\#||地方--\\#\\#地方&&\\#\\#",//我在文件中手动加入##央视和##,作为央视列表的前后分割符,不影响直播,也能点播,因为#是XBPQ使用的连接符,这时要用\\转义。也可以用其他的,随意
  44. "数组":"INF:&&EXT",
  45. "标题":",&&http",
  46. "图片":"http://",
  47. "链接":"http&&\\#",
  48. "嗅探词":"m3u8"
  49. }},
  50. 6.转义符:
  51. *XBPQ使用到的连接符($ # & * [ ])用于表示本义的时候,需要用\\转义,比如:要截取href="?cat&token=5543tdd5779fd87554gfy"中的token=5543tdd5779fd87554gfy,href=\"?cat\\&&&\"
  52. 7.json模式(不懂什么是json的忽略此模式):
  53. *对于json文档,可直接使用json方式,不需要截取
  54. *普通网页中的json数据,需要截取包括大括号{}在内的json数据
  55. *示例:data.list[1].name,表示获取json对象"data"的json数组"list"的第1个json对象的"name"属性值。
  56. *json数组可指定下标,最小下标为1,如:list[](完整数组),list[n](list的第n个json对象),list[3,](不包含第1个第2个)
  57. *处于中间位置的json数组,[]不能省略。
  58. 8.Base64:
  59. *整个html如果是Base64编码,可在二次截取处填写"Base64"表示不截取,只解码,如果截取数据是Base64编码,可使用Base64()解码,比如Base64(a&&b),表示对截取的结果进行Base64解码后再使用
  60. 9.填写及查错步骤
  61. *除"分类url"外,大部分可以省略
  62. *写规则最简步骤:
  63. ①填写"分类url",大部分可以成功
  64. ②a.无分类展示数据:一般是分类获取错误,或者未指定数组情况下不能获取到有效数据。分别尝试填写"分类"和"数组",如果还是没有数据,就把标题图片链接都填写完整。如果网站获取分类需要验证,直接放弃
  65. ②b.有分类,点不开详情页:这是"链接"获取错误,补充填写正确的"链接"
  66. ②c.有分类,有详情,无播放列表或全部都是1:这是播放列表获取错误,补充填写正确"播放数组"以及相关字段
  67. ②d.以上都有,但无法播放:这是获取"播放链接"错误,补充填写正确"播放链接"及相关字段
  68. *可使用"调试":"1",来查看获取的链接是否是自己想要的结果
  69. */
  70. //以下为完整字段
  71. "主页url": "",//默认从分类页中提取,一般不填
  72. "编码": "",//默认"UTF-8",一般不填
  73. "首页": "",//可指定展示分类和数量,如"电影$20",不指定数量默认展示最多40个,不指定分类默认展示首页推荐
  74. "请求头": "",//默认电脑ua,特殊网站需填写为"手机"
  75. "头部集合": "",//支持头部数据集,用$和#分隔
  76. "播放请求头": "",//支持播放单独头部数据集,用$和#分隔
  77. "免嗅": "",//默认为0
  78. "嗅探词":"",//默认使用壳的规则
  79. "过滤词":"",//默认使用壳的规则
  80. "起始页": "",//默认1,一般不填
  81. //1218更新
  82. "直接播放": "",//默认0,为1时所有分类直接播放,也可以指定直接播放的分类,可以指定多个,以#分隔,比如"直接播放":"电影#首页"
  83. //1218更新
  84. "短视频":"",//默认0,用于直接播放类,为1时,直接播放可以省略不写,会拉取整页短视频到播放列表,而不是单个播放,也可以按分类指定,比如"短视频":"直播"
  85. "强制解析":"",//默认0,全都走解析,解析失败再嗅探
  86. "倒序": "",//一般会自动倒序,不用填,也可强制指定
  87. "图片代理": "",//默认0,不显示图片时可试试1
  88. //获取大分类
  89. "分类url": "",//第一页与其他页不一样的(一般是第一页没有页码),直接用英文中括号加在分类url末尾,此处是否填写地区、剧情、年份、排序{area}、{class}、{year}、{by},决定是否开启相应筛选。不支持语言和字母{lang}、{letter}的筛选,最好不填写这个
  90. "分类": "",//用$ #分隔,海阔模式时以&分隔
  91. "分类值":"",//海阔模式时使用,以&分隔
  92. //也可以使用截取方式获取大分类
  93. "分类二次截取": "",
  94. "分类数组": "",
  95. "分类标题": "",
  96. "分类ID": "",
  97. //获取分类展示数据
  98. "二次截取": "",
  99. "数组": "",
  100. "图片": "",
  101. "标题": "",
  102. "副标题": "",
  103. "链接": "",
  104. "链接前缀": "",
  105. "链接后缀": "",
  106. //获取线路标题
  107. "线路二次截取": "",
  108. "线路数组": "",//可按线路名排序,在引号内末尾添加,如[排序:自建蓝光>腾腾>优优]
  109. "线路标题": "",
  110. //获取其他线路链接(用于播放列表不在详情页的情况,一般用不着)
  111. "多线二次截取": "",
  112. "多线数组": "",
  113. "多线链接": "",
  114. "多线链接前缀": "",
  115. "多线链接后缀": "",
  116. //获取详情
  117. "影片类型":"",
  118. "影片年代":"",
  119. "影片地区":"",
  120. "影片状态":"",
  121. "导演": "",
  122. "主演": "",
  123. "简介": "",
  124. //获取播放列表
  125. "播放二次截取": "",
  126. "播放数组": "",
  127. "列表二次截取": "",
  128. "播放列表": "",
  129. "播放标题": "",
  130. "播放链接": "",
  131. "播放链接前缀": "",
  132. "播放链接后缀": "",
  133. /**
  134. 获取搜索数据
  135. *如果搜索全部不填,自动获取包括json和截取的搜索url并搜索;
  136. *如果只填了搜索url,会通过数组字段获取搜索数据,可单独指定搜索截取,指定方式:在其他截取后追加||搜索--a&&b,json方式也可以;
  137. *如果填了搜索url和搜索数组,则通过搜索字段获取搜索数据。
  138. */
  139. "搜索url": "",//可包含页码,会把搜索到的全部内容展示出来,jar能自动正确获取大部分网站搜索url,一般不用填写,手动post模式,网址;post;键1=值1&键2=值2
  140. "搜索模式": "",//默认json与截取混合使用
  141. "搜索二次截取": "",
  142. "搜索数组": "",
  143. "搜索图片": "",
  144. "搜索标题": "",
  145. "搜索链接": "",
  146. "搜索链接前缀": "",
  147. "搜索链接后缀": "",
  148. //获取筛选
  149. "类型": "",//对应{cteId},用$ #分隔,海阔模式时以&分隔
  150. "类型值":"",//海阔模式时使用,以&分隔
  151. "剧情": "",//对应{class},用$ #分隔,海阔模式时以&分隔,内置通用模板,可使用[替换:惊悚>>空]的方式修改内置
  152. "剧情值":"",//海阔模式时使用,以&分隔
  153. "地区": "",//对应{area},用$ #分隔,海阔模式时以&分隔,内置通用模板,可使用[替换:大陆>>中国大陆]的方式修改内置
  154. "地区值":"",//海阔模式时使用,以&分隔
  155. /"年份": "",//对应{year},默认筛选截止目前最近15年,格式:起始年-终止年,也可使用海阔模式,以&分隔
  156. "年份值":"",//海阔模式时使用,用&分隔
  157. "排序": "",//对应{by},默认英文模式,时间$time#热门$hits,以$ #分隔
  158. "筛选": ""
  159. /**
  160. *"筛选"不填写时,会根据"分类url"格式自动使用相应筛选
  161. *可在"筛选"字段填外部json地址,支持本地clan和外网http
  162. *可直接复制包含大括号{}的json数据到"筛选"字段,大括号前后不能有引号
  163. */
  164. }