diff --git a/js/wogg_open.js b/js/wogg_open.js deleted file mode 100644 index dd6960e..0000000 --- a/js/wogg_open.js +++ /dev/null @@ -1,164 +0,0 @@ -import {load, _, Uri} from './lib/cat.js'; -import {log} from './lib/utils.js'; -import {initAli, detailContent, playContent} from './lib/ali.js'; - -let siteKey = 'wogg'; -let siteType = 0; -let siteUrl = 'http://tvfan.xxooo.cf/'; -let UA = "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"; -let patternAli = /(https:\/\/www\.aliyundrive\.com\/s\/[^"]+)/ - -async function init(cfg) { - try { - siteKey = _.isEmpty(cfg.skey) ? '' : cfg.skey; - siteType = _.isEmpty(cfg.stype) ? '' : cfg.stype; - await initAli(cfg); - } catch (e) { - await log('init:' + e.message + ' line:' + e.lineNumber); - } -} - -async function request(reqUrl, agentSp) { - let header = { - 'user-agent': agentSp || 'okhttp/3.12.0', - }; - let uri = new Uri(reqUrl); - let res = await req(uri.toString(), { - headers: header, - timeout: 10000 - }); - let content = res.content; - return content; -} - -function getHeader() { - let header = {}; - header['User-Agent'] = UA; - return header; -} - -async function getString(url) { - let res = await req(url, { - headers: getHeader() - }); - return res.content; -} - -let classes = [{'type_id': 1, 'type_name' : '电影'},{'type_id': 2, 'type_name' : '电视剧'},{'type_id': 6, 'type_name' : '短剧'},{'type_id': 3, 'type_name' : '动漫'},{'type_id': 4, 'type_name' : '综艺'},{'type_id': 5, 'type_name' : '音乐'}]; -let filterObj = { 1: [{ key: 'class', name: '剧情', value: [{ n: '全部', v: '' }, { n: '喜剧', v: '喜剧' }, { n: '爱情', v: '爱情' }, { n: '恐怖', v: '恐怖' }, { n: '动作', v: '动作' }, { n: '科幻', v: '科幻' }, { n: '剧情', v: '剧情' }, { n: '战争', v: '战争' }, { n: '警匪', v: '警匪' }, { n: '犯罪', v: '犯罪' }, { n: '古装', v: '古装' }, { n: '奇幻', v: '奇幻' }, { n: '冒险', v: '冒险' }] },{ key: 'area', name: '地区', value: [{ n: '全部', v: '' }, { n: '大陆', v: '大陆' }, { n: '香港', v: '香港' }, { n: '台湾', v: '台湾' }, { n: '美国', v: '美国' }, { n: '法国', v: '法国' }, { n: '英国', v: '英国' }, { n: '日本', v: '韩国' }, { n: '德国', v: '德国' }, { n: '泰国', v: '泰国' }, { n: '印度', v: '印度' }, { n: '意大利', v: '意大利' }, { n: '西班牙', v: '西班牙' },{ n: '加拿大', v: '加拿大' },{ n: '其他', v: '其他' }] },{ key: 'year', name: '年份', value: [{ n: '全部', v: '' }, { n: '2023', v: '2023' }, { n: '2022', v: '2022' }, { n: '2021', v: '2021' }, { n: '2020', v: '2020' }, { n: '2019', v: '2019' }, { n: '2018', v: '2018' }, { n: '2017', v: '2017' }, { n: '2016', v: '2016' }, { n: '2015', v: '2015' }, { n: '2014', v: '2014' }, { n: '2013', v: '2013' }, { n: '2012', v: '2012' }, { n: '2011', v: '2011'},{ n: '2010', v: '2010'},{ n: '2010', v: '2010'}]},{ key: 'by', name: '排序', value: [{ n: '时间', v: 'time' }, { n: '人气', v: 'hits' }, { n: '评分', v: 'score' }] }], - 2: [{ key: 'class', name: '剧情', value: [{ n: '全部', v: '' }, { n: '喜剧', v: '喜剧' }, { n: '爱情', v: '爱情' }, { n: '恐怖', v: '恐怖' }, { n: '动作', v: '动作' }, { n: '科幻', v: '科幻' }, { n: '剧情', v: '剧情' }, { n: '战争', v: '战争' }, { n: '警匪', v: '警匪' }, { n: '犯罪', v: '犯罪' }, { n: '古装', v: '古装' }, { n: '奇幻', v: '奇幻' }, { n: '冒险', v: '冒险' }] },{ key: 'area', name: '地区', value: [{ n: '全部', v: '' }, { n: '大陆', v: '大陆' }, { n: '香港', v: '香港' }, { n: '台湾', v: '台湾' }, { n: '美国', v: '美国' }, { n: '法国', v: '法国' }, { n: '英国', v: '英国' }, { n: '日本', v: '韩国' }, { n: '德国', v: '德国' }, { n: '泰国', v: '泰国' }, { n: '印度', v: '印度' }, { n: '意大利', v: '意大利' }, { n: '西班牙', v: '西班牙' },{ n: '加拿大', v: '加拿大' },{ n: '其他', v: '其他' }] },{ key: 'year', name: '年份', value: [{ n: '全部', v: '' }, { n: '2023', v: '2023' }, { n: '2022', v: '2022' }, { n: '2021', v: '2021' }, { n: '2020', v: '2020' }, { n: '2019', v: '2019' }, { n: '2018', v: '2018' }, { n: '2017', v: '2017' }, { n: '2016', v: '2016' }, { n: '2015', v: '2015' }, { n: '2014', v: '2014' }, { n: '2013', v: '2013' }, { n: '2012', v: '2012' }, { n: '2011', v: '2011'},{ n: '2010', v: '2010'}] },{ key: 'by', name: '排序', value: [{ n: '时间', v: 'time' }, { n: '人气', v: 'hits' }, { n: '评分', v: 'score' }] }], - 3: [{ key: 'class', name: '剧情', value: [{ n: '全部', v: '' }, { n: '情感', v: '情感' }, { n: '科幻', v: '科幻' }, { n: '热血', v: '热血' }, { n: '推理', v: '推理' }, { n: '搞笑', v: '搞笑' }, { n: '冒险', v: '冒险' }, { n: '萝莉', v: '萝莉' }, { n: '校园', v: '校园' }, { n: '动作', v: '动作' }, { n: '机战', v: '机战' }, { n: '运动', v: '运动' }, { n: '战争', v: '战争' }, { n: '少年', v: '少年' },{ n: '少女', v: '少女' }, { n: '社会', v: '社会' }, { n: '原创', v: '原创' }, { n: '亲子', v: '亲子' }, { n: '益智', v: '益智' }, { n: '励志', v: '励志' }, { n: '其他', v: '其他' }] }, { key: 'area', name: '地区', value: [{ n: '全部', v: '' }, { n: '大陆', v: '大陆' }, { n: '香港', v: '香港' }, { n: '台湾', v: '台湾' }, { n: '美国', v: '美国' }, { n: '法国', v: '法国' }, { n: '英国', v: '英国' }, { n: '日本', v: '韩国' }, { n: '德国', v: '德国' }, { n: '泰国', v: '泰国' }, { n: '印度', v: '印度' }, { n: '意大利', v: '意大利' }, { n: '西班牙', v: '西班牙' },{ n: '加拿大', v: '加拿大' },{ n: '其他', v: '其他' }] },{ key: 'year', name: '年份', value: [{ n: '全部', v: '' }, { n: '2023', v: '2023' }, { n: '2022', v: '2022' }, { n: '2021', v: '2021' }, { n: '2020', v: '2020' }, { n: '2019', v: '2019' }, { n: '2018', v: '2018' }, { n: '2017', v: '2017' }, { n: '2016', v: '2016' }, { n: '2015', v: '2015' }, { n: '2014', v: '2014' }, { n: '2013', v: '2013' }, { n: '2012', v: '2012' }, { n: '2011', v: '2011' },{ n: '2010', v: '2010'}] },{ key: 'by', name: '排序', value: [{ n: '时间', v: 'time' }, { n: '人气', v: 'hits' }, { n: '评分', v: 'score' }] }], - 4: [{ key: 'area', name: '地区', value: [{ n: '全部', v: '' }, { n: '大陆', v: '大陆' }, { n: '香港', v: '香港' }, { n: '台湾', v: '台湾' }, { n: '美国', v: '美国' }, { n: '法国', v: '法国' }, { n: '英国', v: '英国' }, { n: '日本', v: '韩国' }] },{ key: 'year', name: '年份', value: [{ n: '全部', v: '' }, { n: '2023', v: '2023' }, { n: '2022', v: '2022' }, { n: '2021', v: '2021' }, { n: '2020', v: '2020' }, { n: '2019', v: '2019' }, { n: '2018', v: '2018' }, { n: '2017', v: '2017' }, { n: '2016', v: '2016' }, { n: '2015', v: '2015' }, { n: '2014', v: '2014' }, { n: '2013', v: '2013' }, { n: '2012', v: '2012' }, { n: '2011', v: '2011' },{ n: '2010', v: '2010'}] },{ key: 'by', name: '排序', value: [{ n: '时间', v: 'time' }, { n: '人气', v: 'hits' }, { n: '评分', v: 'score' }] }], - 5: [{ key: 'by', name: '排序', value: [{ n: '时间', v: 'time' }, { n: '人气', v: 'hits' }, { n: '评分', v: 'score' }] }], - 6: [{ key: 'class', name: '古装', value: [{ n: '全部', v: '' }, { n: '剧情', v: '古装' }, { n: '战争', v: '战争' }, { n: '青春偶像', v: '青春偶像' }, { n: '喜剧', v: '喜剧' }, { n: '家庭', v: '家庭' }, { n: '犯罪', v: '犯罪' }, { n: '动作', v: '动作' }, { n: '奇幻', v: '奇幻' }, { n: '剧情', v: '剧情' }, { n: '历史', v: '历史' }, { n: '经典', v: '经典' }, { n: '乡村', v: '乡村' },{ n: '商战', v: '商战' }, { n: '网剧', v: '网剧' }, { n: '其他', v: '其他' }] },{ key: 'area', name: '地区', value: [{ n: '全部', v: '' }, { n: '内地', v: '内地' }] },{ key: 'year', name: '年份', value: [{ n: '全部', v: '' }, { n: '2023', v: '2023' }, { n: '2022', v: '2022' }, { n: '2021', v: '2021' }, { n: '2020', v: '2020' }, { n: '2019', v: '2019' }, { n: '2018', v: '2018' }, { n: '2017', v: '2017' }, { n: '2016', v: '2016' }, { n: '2015', v: '2015' }, { n: '2014', v: '2014' }, { n: '2013', v: '2013' }, { n: '2012', v: '2012' }, { n: '2011', v: '2011' },{ n: '2010', v: '2010'}] }] - - }; - -async function home(filter) { - return JSON.stringify({ - class: classes, - filters: filterObj, - }); -} - - -async function homeVod() { - return '{}'; -} - - -async function category(tid, pg, filter, extend) { - - let reqUrl = siteUrl + '/index.php/vodshow/'+ tid + '-' + (extend.area || '') + '-' + (extend.by || 'time') + '-' + (extend.class || '') + '-' + (extend.lang || '') + '-' + (extend.letter || '') + '---' + pg + '---' + (extend.year || '') + '.html'; - let con = await request(reqUrl, UA); - const $ = load(con); - let items = $('.module:eq(0) > .module-list > .module-items > .module-item'); - let videos = []; - for(var item of items) { - let oneA = $(item).find('.module-item-cover .module-item-pic a').first(); - let href = oneA.attr('href'); - let name = oneA.attr('title'); - let oneImg = $(item).find('.module-item-cover .module-item-pic img').first(); - let pic = oneImg.attr('data-src'); - let remark = $(item).find('.module-item-text').first().text(); - videos.push({ - vod_id: href, - vod_name: name, - vod_pic: pic, - vod_remarks: remark, - }); - } - - const hasMore = $('#page > a:contains(下一页)').length > 0; - const pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg); - return JSON.stringify({ - page: parseInt(pg), - pagecount: pgCount, - limit: 72, - total: 72 * pgCount, - list: videos, - }); -} - -async function detail(id) { - try { - await log('detail:id:---' + id); - let preMatches = id.match(patternAli); - if (!_.isEmpty(preMatches)) return await detailContent(preMatches[1]); - let url = siteUrl + id; - let aliUrl = await getString(url); - let matches = aliUrl.match(patternAli); - console.log('detailmatche---'); - console.log(matches[1]); - if (!_.isEmpty(matches)) return await detailContent(matches[1]); - return ''; - } catch (e) { - await log( 'detail:' + e.message + ' line:' + e.lineNumber); - } -} - - -async function play(flag, id, flags) { - try { - return await playContent(flag, id, flags); - } catch (e) { - await log( 'play:' + e.message + ' line:' + e.lineNumber); - } -} - - -async function search(wd, quick) { - await log('search---' + wd); - let searchUrl = siteUrl + '/index.php/vodsearch/-------------.html?wd=' + wd; - let html = await getString(searchUrl); - let $ = load(html); - let items = $('.module-search-item'); - let videos = []; - for(var item of items) { - let vodId = $(item).find(".video-serial")[0].attribs.href; - let name = $(item).find(".video-serial")[0].attribs.title; - let pic = $(item).find(".module-item-pic > img")[0].attribs['data-src']; - let remark = ''; - videos.push({ - vod_id: vodId, - vod_name: name, - vod_pic: pic, - vod_remarks: remark, - }); - } - return JSON.stringify({ - list: videos, - }); -} - -export function __jsEvalReturn() { - return { - init: init, - home: home, - homeVod: homeVod, - category: category, - detail: detail, - play: play, - search: search, - }; -} \ No newline at end of file