添加茶杯狐
This commit is contained in:
@@ -0,0 +1,102 @@
|
||||
var rule = {
|
||||
title: '茶杯狐',
|
||||
host: 'https://www.cupfox.in',
|
||||
url: '/type/fyclass/?page=fypage',
|
||||
searchUrl: '/search?q=**',
|
||||
searchable: 2,
|
||||
quickSearch: 1,
|
||||
filterable: 0,
|
||||
headers: {
|
||||
'User-Agent': 'PC_UA',
|
||||
},
|
||||
class_name: '电视剧&电影&动漫&综艺&纪录片',
|
||||
class_url: 'tv&movie&anime&show&doc',
|
||||
play_parse: true,
|
||||
limit: 6,
|
||||
推荐: '*',
|
||||
一级: $js.toString(() => {
|
||||
let html = request(input);
|
||||
let items = pdfa(html, '.movie-list-item');
|
||||
let seen = {};
|
||||
VODS = items.map((it) => {
|
||||
let url = pd(it, 'a:eq(0)&&href', HOST);
|
||||
let id = (url.match(/vod-detail\/(\d+)\.html/) || [])[1] || url;
|
||||
let title = pdfh(it, '.movie-title&&Text');
|
||||
let pic = pd(it, 'img&&src', HOST);
|
||||
let remark = pdfh(it, '.movie-rating&&Text');
|
||||
if (!title || seen[id]) {
|
||||
return null;
|
||||
}
|
||||
seen[id] = true;
|
||||
return {
|
||||
vod_id: url,
|
||||
vod_name: title,
|
||||
vod_pic: pic,
|
||||
vod_remarks: remark || ''
|
||||
};
|
||||
}).filter(Boolean);
|
||||
}),
|
||||
二级: $js.toString(() => {
|
||||
let html = request(input);
|
||||
let id = (input.match(/vod-detail\/(\d+)\.html/) || [])[1];
|
||||
let title = pdfh(html, '.movie-list-title:eq(0)&&Text') || pdfh(html, 'title&&Text').replace(' 在线观看 - 茶杯狐 Cupfox', '');
|
||||
let pic = HOST + '/simg/' + id + '.jpg';
|
||||
let content = pdfh(html, 'meta[name=description]&&content');
|
||||
let subjects = pdfa(html, '.movie-list-subject-block:eq(0) .movie-list-subject').map((it) => pdfh(it, 'body&&Text')).filter(Boolean);
|
||||
let eps = pdfa(html, '.play-btn');
|
||||
let urls = eps.map((it) => {
|
||||
let ep = (pdfh(it, 'body&&Html').match(/ep_slug="([^"]+)"/) || [])[1];
|
||||
let name = pdfh(it, 'body&&Text');
|
||||
return ep && name ? name + '$' + id + '-' + ep : '';
|
||||
}).filter(Boolean);
|
||||
VOD = {
|
||||
vod_id: input,
|
||||
vod_name: title,
|
||||
vod_pic: pic,
|
||||
type_name: subjects.slice(0, 3).join(' '),
|
||||
vod_year: subjects.find((it) => /^\d{4}$/.test(it)) || '',
|
||||
vod_actor: subjects.slice(3).join(' '),
|
||||
vod_content: content,
|
||||
vod_play_from: '茶杯狐',
|
||||
vod_play_url: urls.join('#')
|
||||
};
|
||||
}),
|
||||
搜索: $js.toString(() => {
|
||||
let html = request(input);
|
||||
let items = pdfa(html, '.movie-list-item');
|
||||
let seen = {};
|
||||
VODS = items.map((it) => {
|
||||
let url = pd(it, 'a:eq(0)&&href', HOST);
|
||||
let id = (url.match(/vod-detail\/(\d+)\.html/) || [])[1] || url;
|
||||
let title = pdfh(it, '.movie-title&&Text');
|
||||
let pic = pd(it, 'img&&src', HOST);
|
||||
let remark = pdfh(it, '.movie-rating&&Text');
|
||||
if (!title || seen[id]) {
|
||||
return null;
|
||||
}
|
||||
seen[id] = true;
|
||||
return {
|
||||
vod_id: url,
|
||||
vod_name: title,
|
||||
vod_pic: pic,
|
||||
vod_remarks: remark || ''
|
||||
};
|
||||
}).filter(Boolean);
|
||||
}),
|
||||
lazy: $js.toString(() => {
|
||||
let html = request(HOST + '/tea/' + input, {
|
||||
headers: {
|
||||
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36 Edg/136.0.0.0',
|
||||
'Referer': HOST + '/'
|
||||
}
|
||||
});
|
||||
let data = JSON.parse(html);
|
||||
let plays = data.video_plays || [];
|
||||
let url = plays.length ? plays[0].play_data : '';
|
||||
input = {
|
||||
jx: 0,
|
||||
parse: 0,
|
||||
url: url
|
||||
};
|
||||
})
|
||||
};
|
||||
Reference in New Issue
Block a user