网飞猫.js 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. var rule = {
  2. title: '网飞猫',
  3. host: 'https://www.ncat3.com:51111',
  4. //host: 'https://www.kkys01.com',
  5. // url: '/show/fyclass-----2-fypage.html',
  6. url: '/show/fyclass-fyfilter-fypage.html',
  7. filter_url: '{{fl.类型}}-{{fl.地区}}-{{fl.语言}}-{{fl.年份}}-{{fl.排序}}',
  8. searchUrl: '/search?k=**&page=fypage',
  9. searchable: 2,
  10. quickSearch: 0,
  11. filterable: 1,
  12. headers: {
  13. 'User-Agent': 'MOBILE_UA',
  14. },
  15. class_parse: '#nav-swiper&&.nav-swiper-slide;a&&Text;a&&href;/(\\w+).html',
  16. cate_exclude: 'Netflix|今日更新|专题列表|排行榜',
  17. tab_exclude:'可可影视提供',
  18. tab_order: ['超清', 'FF线路','LZ线路','极速蓝光'],
  19. tab_remove:['4K(高峰不卡)'],
  20. tab_rename:{'超清':'尤东风💠超清','FF线路':'尤东风💠非凡','LZ线路':'尤东风💠量子','蓝光3':'尤东风💠蓝光3'},
  21. play_parse: true,
  22. lazy: '',
  23. limit: 20,
  24. 推荐: '.section-box:eq(2)&&.module-box-inner&&.module-item;*;*;*;*',
  25. double: false,
  26. 一级: '.module-box-inner&&.module-item;.v-item-title:eq(1)&&Text;img:last-of-type&&data-original;.v-item-bottom&&span:eq(1)&&Text;a&&href',
  27. 二级: {
  28. title: '.detail-pic&&img&&alt;.detail-tags&&a&&Text',
  29. img: '.detail-pic&&img&&data-original',
  30. desc: '.detail-info-row-main:eq(-2)&&Text;.detail-tags&&a&&Text;.detail-tags&&a:eq(1)&&Text;.detail-info-row-main:eq(1)&&Text;.detail-info-row-main&&Text',
  31. content: '.detail-desc&&Text',
  32. //tabs: '.source-item-label:nth-of-type(2)',
  33. tabs: 'body&&.source-item-label[id]',
  34. lists: '.episode-list:eq(#id) a',
  35. },
  36. 搜索: '.search-result-list&&a;.title:eq(1)&&Text;*;.search-result-item-header&&Text;a&&href;.desc&&Text',
  37. 预处理: $js.toString(() => {
  38. let html = request(rule.host);
  39. let scripts = pdfa(html, 'script');
  40. let img_script = scripts.find(it => pdfh(it, 'script&&src').includes('rdul.js'));
  41. if (img_script) {
  42. let img_url = img_script.match(/src="(.*?)"/)[1];
  43. //console.log(img_url);
  44. let img_html = request(img_url);
  45. let img_host = img_html.match(/'(.*?)'/)[1];
  46. log(img_host);
  47. rule.图片替换 = rule.host + '=>' + img_host;
  48. }
  49. }),
  50. filter: 'H4sIAAAAAAAAA+2Zz08bRxTH/xefOdgGtTi3HlqpUpVLe6hURREHV4qa0kN/qFWEZLANxhBsEDFx7AIpGEyCf0CQY9bY/md2Ztf/RWf95r0ZR+3LtqGRqviC+LzvzOzs7Nt531k/isQid755FPku+VvkTsS76In9jchMZHHh+6TNvyw8/Dk5briowiJbH6XrQVhBZGkGoneTP3378MGvOnz3068+++Lzr0kV66cyndWiBtJKVRVBDYC0fN3tV1EDQM3LXZgxNaAml4syVdKaBtLSebnyDDUAGjPf8vovcEwA0k63xXUPNQAac+XcK23jmAB0D7U1008Daas7o/IZagA0Zu6p66zjmADUb2tVFC6xHwBphWP/iNYagLRmRzgN1ABQc28O/WZbaxpoLo0Td3CIcwEw2qaf2ydtDLRmBw1vfQ3XDMB6tt5uzzzbAEjLDL2XNdQAUPOXN0XV0ZqGpXuBCmksqm2x6Zg0Jg6TxuL4dFRexUXoNkSlr0PYYnRSlt3WRAsdMg+gLa8Hk2NAiJZlsKWCuCwAtJx7NVk9x+UEoGsfnJl+GmhZNi6MpoHGfPXEaBpotoPXRtNA2uO2cE5QAzBjtu0x23Y/t3s9on4a6N6390W2i/cOQNd7feXXhng9AJMuh3JjqB4GZQwyXXWY8fp7skQPh5jmnCmoDiKHb5xhatHaVSj3OtiC2Np2RHtXZPFNMUxPojb0CirVy/gwiOkqg1dwXdehjcgO0T1nO24PtzENdqr7rYZfT5lUJw6V6pW+ao+DA9BNXh4bTYOVaEbTYCWv0TRYyWs0DVaCWv0Awi6CuL5ye33rfUcOswjxaHxOx8b/WvFZE5+143ETj9vxmInH7HjUxKMUj0XH0zwiLRa9r/4kqEH0zQbRoEHUNEhMNoglEtH76o9pMP9mg/mgwbxpICtXcg9fhUD7ODGxsHJrRzgFs7DEkwvr9W5EMYdXMaNXU7KEL0ncDntpfNJmXf1WRuRw350LpnFvRvX6b8yJpjDmhDMZnHHhjARrFrjizZghrrBzhoczJ0FhovvTEMYMceaEMzVBQaPraQhjQNSWZ56RhjBGkDNfo3RfdFdwLgC3bUAoHLllA8LZhH9rPTgLwVkP1l681ShxJoMzJ9PCOS2cH3DhnH1PhTNfl6llefNy4hxnQqFO/9wpkPsywGzebKHkCh5X1JgTqSzue+dU0AFCGQimaHMnZ5UH/vMUagCkVfKyjFVFQxjj4fUK1rEMgPodPhcV2mQAUPtk8YFKK5Dgf8rMYVGtPW53AHRUcy5Fo4g7PwBtd7/vyKe40hpMOd9Qa0jlfAxhLMJfWqDb+mbAlc23l/N3+1rwbmZg+s1g+s1gan1snlqf/7n1mbst6+M5L0T/CaYzAGnVA9dxvFOqwcQ0t2bb9NZAWuZCFI5Mb8OhDBP36Z8xTNznfa/SFUe0OQHQbPMrXqWJUwUwJffvP/1zBo2zBl8mF378YVFrGmie3M8zjGHiDJosP3NvaEcFmP6cMC0j0zLyIZeRj/55GTFh+ymPUqv+H5R6AJTqu1XRxBOLBppVuajON5jqANTvbOh38tgPgK639tjbPcDrAYQpK+yv28zJij3fMudw9tdt7myf7Yhm2rySAbz3zFEpsvQnK+G0IDwhAAA=',
  51. 一级f: `js:
  52. let urls = [
  53. 'https://www.ncat3.com:51111/show/1-----1-1.html',
  54. 'https://www.ncat3.com:51111/show/2-----1-1.html',
  55. 'https://www.ncat3.com:51111/show/3-----1-1.html',
  56. 'https://www.ncat3.com:51111/show/4-----1-1.html',
  57. 'https://www.ncat3.com:51111/show/6-----1-1.html',
  58. ];
  59. let filters = {};
  60. pdfa = jsp.pdfa;
  61. pdfh = jsp.pdfh;
  62. for(let url of urls){
  63. let fclass = url.match(/show\\/(\\d+)-/)[1];
  64. console.log(fclass);
  65. let html = request(url);
  66. let tabs = pdfa(html, '.filter-row');
  67. let data = [];
  68. for (let tab of tabs) {
  69. let title = pdfh(tab, 'strong&&Text').replace(':','');
  70. let lis = pdfa(tab, 'a');
  71. let _map = {key: title, name: title};
  72. let value = [];
  73. for (let li of lis) {
  74. let n = pdfh(li, 'a&&Text').trim();
  75. let v=n;
  76. if(/全部|地区|类型/.test(n)){
  77. v = '';
  78. }else if(/综合/.test(n)){
  79. v = '1';
  80. }else{
  81. v = pdfh(li,'a&&href');
  82. try {
  83. v = v.match(/-(.*?)1-1\.html/)[1].replace(/-/g,'');
  84. }catch (e) {
  85. v = v.match(/-(.*?)-1\.html/)[1].replace(/-/g,'');
  86. }
  87. v = decodeURIComponent(v);
  88. }
  89. value.push({
  90. 'n': n, 'v': v
  91. });
  92. }
  93. _map['value'] = value;
  94. data.push(_map);
  95. }
  96. filters[fclass] = data;
  97. }
  98. VODS = [filters];
  99. console.log(gzip(JSON.stringify(filters)));
  100. `,
  101. }