mirror of
https://github.com/vega-org/vega-providers.git
synced 2026-04-17 23:51:44 +00:00
feat: add extractors bundled in file refactor stream handling in multiple providers
This commit is contained in:
2
dist/moviesApi/stream.js
vendored
2
dist/moviesApi/stream.js
vendored
@@ -1 +1 @@
|
||||
"use strict";var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator.throw(value))}catch(e){reject(e)}}function step(result){var value;result.done?resolve(result.value):(value=result.value,value instanceof P?value:new P(function(resolve){resolve(value)})).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};Object.defineProperty(exports,"__esModule",{value:!0}),exports.mpGetStream=void 0;const mpGetStream=function(_a){return __awaiter(this,arguments,void 0,function*({link:id,type:type,providerContext:providerContext}){var _b,_c;try{const{getBaseUrl:getBaseUrl,cheerio:cheerio}=providerContext,streams=[],{season:season,episode:episode,tmdbId:tmdbId}=JSON.parse(id),baseUrl=yield getBaseUrl("moviesapi"),link="movie"===type?`${baseUrl}/movie/${tmdbId}`:`${baseUrl}/tv/${tmdbId}-${season}-${episode}`,res=yield fetch(link,{headers:{referer:baseUrl}}),baseData=yield res.text(),embededUrl=cheerio.load(baseData)("iframe").attr("src")||"",response=yield fetch(embededUrl,{credentials:"omit",headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:101.0) Gecko/20100101 Firefox/101.0",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8","Accept-Language":"en-US,en;q=0.5","Alt-Used":"w1.moviesapi.club","Upgrade-Insecure-Requests":"1","Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"none","Sec-Fetch-User":"?1",Pragma:"no-cache","Cache-Control":"no-cache",referer:baseUrl},referrer:baseUrl,method:"GET",mode:"cors"}),contents=(null===(_b=(yield response.text()).match(/const\s+Encrypted\s*=\s*['"]({.*})['"]/))||void 0===_b?void 0:_b[1])||"";if(embededUrl){const res2=yield fetch("https://ext.8man.me/api/decrypt?passphrase==JV[t}{trEV=Ilh5",{method:"POST",body:contents}),finalData=yield res2.json(),subtitle=null===(_c=null==finalData?void 0:finalData.subtitles)||void 0===_c?void 0:_c.map(sub=>{var _a;return{title:(null==sub?void 0:sub.label)||"Unknown",language:null==sub?void 0:sub.label,type:(null===(_a=null==sub?void 0:sub.file)||void 0===_a?void 0:_a.includes(".vtt"))?"text/vtt":"application/x-subrip",uri:null==sub?void 0:sub.file}});streams.push({server:"vidstreaming ",type:"m3u8",subtitles:subtitle,link:null==finalData?void 0:finalData.videoUrl,headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:101.0) Gecko/20100101 Firefox/101.0",Referer:baseUrl,Origin:baseUrl,Accept:"*/*","Accept-Language":"en-US,en;q=0.5","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"cross-site",Pragma:"no-cache","Cache-Control":"no-cache"}})}return streams}catch(err){return[]}})};exports.mpGetStream=mpGetStream;
|
||||
var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator.throw(value))}catch(e){reject(e)}}function step(result){var value;result.done?resolve(result.value):(value=result.value,value instanceof P?value:new P(function(resolve){resolve(value)})).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};exports.mpGetStream=void 0;const mpGetStream=function(_a){return __awaiter(this,arguments,void 0,function*({link:id,type:type,providerContext:providerContext}){var _b,_c;try{const{getBaseUrl:getBaseUrl,cheerio:cheerio}=providerContext,streams=[],{season:season,episode:episode,tmdbId:tmdbId}=JSON.parse(id),baseUrl=yield getBaseUrl("moviesapi"),link="movie"===type?`${baseUrl}/movie/${tmdbId}`:`${baseUrl}/tv/${tmdbId}-${season}-${episode}`,res=yield fetch(link,{headers:{referer:baseUrl}}),baseData=yield res.text(),embededUrl=cheerio.load(baseData)("iframe").attr("src")||"",response=yield fetch(embededUrl,{credentials:"omit",headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:101.0) Gecko/20100101 Firefox/101.0",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8","Accept-Language":"en-US,en;q=0.5","Alt-Used":"w1.moviesapi.club","Upgrade-Insecure-Requests":"1","Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"none","Sec-Fetch-User":"?1",Pragma:"no-cache","Cache-Control":"no-cache",referer:baseUrl},referrer:baseUrl,method:"GET",mode:"cors"}),contents=(null===(_b=(yield response.text()).match(/const\s+Encrypted\s*=\s*['"]({.*})['"]/))||void 0===_b?void 0:_b[1])||"";if(embededUrl){const res2=yield fetch("https://ext.8man.me/api/decrypt?passphrase==JV[t}{trEV=Ilh5",{method:"POST",body:contents}),finalData=yield res2.json(),subtitle=null===(_c=null==finalData?void 0:finalData.subtitles)||void 0===_c?void 0:_c.map(sub=>{var _a;return{title:(null==sub?void 0:sub.label)||"Unknown",language:null==sub?void 0:sub.label,type:(null===(_a=null==sub?void 0:sub.file)||void 0===_a?void 0:_a.includes(".vtt"))?"text/vtt":"application/x-subrip",uri:null==sub?void 0:sub.file}});streams.push({server:"vidstreaming ",type:"m3u8",subtitles:subtitle,link:null==finalData?void 0:finalData.videoUrl,headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:101.0) Gecko/20100101 Firefox/101.0",Referer:baseUrl,Origin:baseUrl,Accept:"*/*","Accept-Language":"en-US,en;q=0.5","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"cross-site",Pragma:"no-cache","Cache-Control":"no-cache"}})}return streams}catch(err){return[]}})};exports.mpGetStream=mpGetStream;
|
||||
Reference in New Issue
Block a user