fix: update getStream function to directly use hubcloudExtracter with axios and cheerio

This commit is contained in:
Himanshu
2025-12-14 17:07:22 +05:30
parent 28eeb51898
commit 6eea0bc10f
2 changed files with 4 additions and 4 deletions

2
dist/vega/stream.js vendored
View File

@@ -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.getStream=getStream;const headers={Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","Cache-Control":"no-store","Accept-Language":"en-US,en;q=0.9",DNT:"1","sec-ch-ua":'"Not_A Brand";v="8", "Chromium";v="120", "Microsoft Edge";v="120"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"none","Sec-Fetch-User":"?1",Cookie:"ext_name=ojplmecpdpgccookcobabopnaifgidhf; cf_clearance=6yZYfXQxBgjaD1eacR5zZCz7njssbxjtSZZCElTOGk0-1764836255-1.2.1.1-bzHvDcDRLp6AAYo7qvGVzJ6Gk6zaqAepuGiGhAWCGYL.ZDpw5yI4TkUIXDgAnEhGCZ9J5X2_OagzgeMHZrd8rzeyAFQXj0dmYMErcfII7_Rhq5kZ4kAtS0tl9PtaNKKd2m4taIufySXCCstl3iNLMODTjbsW_KZi8U8DauOdGSAhBd1DCGxvLlAOM.snfkhb0yQiVJcLW8Bv9IeKQac0ar_TKkV6QexqNZYiyRXnE7E; xla=s4t","Upgrade-Insecure-Requests":"1","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36 Edg/142.0.0.0"};function getStream(_a){return __awaiter(this,arguments,void 0,function*({link:link,type:type,signal:signal,providerContext:providerContext}){var _b,_c,_d,_e;const{axios:axios,cheerio:cheerio,extractors:extractors}=providerContext,{hubcloudExtracter:hubcloudExtracter}=extractors;try{const streamLinks=[];if("movie"===type){const dotlinkText=(yield axios(`${link}`,{headers:headers})).data;link=(dotlinkText.match(/<a\s+href="([^"]*cloud\.[^"]*)"/i)||[])[1];try{const filepressLink=cheerio.load(dotlinkText)('.btn.btn-sm.btn-outline[style="background:linear-gradient(135deg,rgb(252,185,0) 0%,rgb(0,0,0)); color: #fdf8f2;"]').parent().attr("href"),filepressID=null==filepressLink?void 0:filepressLink.split("/").pop(),filepressBaseUrl=null==filepressLink?void 0:filepressLink.split("/").slice(0,-2).join("/"),filepressTokenRes=yield axios.post(filepressBaseUrl+"/api/file/downlaod/",{id:filepressID,method:"indexDownlaod",captchaValue:null},{headers:{"Content-Type":"application/json",Referer:filepressBaseUrl}});if(null===(_b=filepressTokenRes.data)||void 0===_b?void 0:_b.status){const filepressToken=null===(_c=filepressTokenRes.data)||void 0===_c?void 0:_c.data,filepressStreamLink=yield axios.post(filepressBaseUrl+"/api/file/downlaod2/",{id:filepressToken,method:"indexDownlaod",captchaValue:null},{headers:{"Content-Type":"application/json",Referer:filepressBaseUrl}});streamLinks.push({server:"filepress",link:null===(_e=null===(_d=filepressStreamLink.data)||void 0===_d?void 0:_d.data)||void 0===_e?void 0:_e[0],type:"mkv"})}}catch(error){}}return yield hubcloudExtracter(link,signal)}catch(error){return error.message.includes("Aborted"),[]}})}
"use strict";var x=Object.defineProperty;var S=Object.getOwnPropertyDescriptor;var R=Object.getOwnPropertyNames;var E=Object.prototype.hasOwnProperty;var c=(t,o)=>x(t,"name",{value:o,configurable:!0});var A=(t,o)=>{for(var i in o)x(t,i,{get:o[i],enumerable:!0})},C=(t,o,i,u)=>{if(o&&typeof o=="object"||typeof o=="function")for(let s of R(o))!E.call(t,s)&&s!==i&&x(t,s,{get:()=>o[s],enumerable:!(u=S(o,s))||u.enumerable});return t};var B=t=>C(x({},"__esModule",{value:!0}),t);var M={};A(M,{getStream:()=>j});module.exports=B(M);var m={"sec-ch-ua":'"Not_A Brand";v="8", "Chromium";v="120", "Microsoft Edge";v="120"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 Edg/120.0.0.0"};var U=c(function(t){return t===void 0?"":atob(t.toString())},"decode");async function b(t,o,i){let{axios:u,cheerio:s}=i;try{let h=t.split("/").slice(0,3).join("/"),n=[],f=(await u(`${t}`,{headers:m,signal:o})).data,y=s.load(f),k=f.match(/var\s+url\s*=\s*'([^']+)';/)||[],d=U(k[1]?.split("r=")?.[1])||k[1]||y(".fa-file-download.fa-lg").parent().attr("href")||t;d?.startsWith("/")&&(d=`${h}${d}`);let v=await fetch(d,{headers:m,signal:o,redirect:"follow"}),p=s.load(await v.text()),g=p(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(let w of g){let e=p(w).attr("href")||"";switch(!0){case(e?.includes(".dev")&&!e?.includes("/?id=")):n.push({server:"Cf Worker",link:e,type:"mkv"});break;case e?.includes("pixeld"):if(!e?.includes("api")){let a=e.split("/").pop();e=`${e.split("/").slice(0,-2).join("/")}/api/file/${a}?download`}n.push({server:"Pixeldrain",link:e,type:"mkv"});break;case(e?.includes("hubcloud")||e?.includes("/?id=")):try{let a=await fetch(e,{method:"HEAD",headers:m,signal:o,redirect:"manual"}),r=e;if(a.status>=300&&a.status<400?r=a.headers.get("location")||e:a.url&&a.url!==e?r=a.url:r=a.headers.get("location")||e,r.includes("googleusercontent"))r=r.split("?link=")[1];else{let l=await fetch(r,{method:"HEAD",headers:m,signal:o,redirect:"manual"});l.status>=300&&l.status<400?r=l.headers.get("location")?.split("?link=")[1]||r:l.url&&l.url!==r?r=l.url.split("?link=")[1]||l.url:r=l.headers.get("location")?.split("?link=")[1]||r}n.push({server:"hubcloud",link:r,type:"mkv"})}catch{}break;case e?.includes("cloudflarestorage"):n.push({server:"CfStorage",link:e,type:"mkv"});break;case(e?.includes("fastdl")||e?.includes("fsl.")):n.push({server:"FastDl",link:e,type:"mkv"});break;case(e.includes("hubcdn")&&!e.includes("/?id=")):n.push({server:"HubCdn",link:e,type:"mkv"});break;default:if(e?.includes(".mkv")){let a=e.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i)?.[1]?.replace(/\./g," ")||"Unknown";n.push({server:a,link:e,type:"mkv"})}break}}return n}catch{return[]}}c(b,"hubcloudExtracter");var T={Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","Cache-Control":"no-store","Accept-Language":"en-US,en;q=0.9",DNT:"1","sec-ch-ua":'"Not_A Brand";v="8", "Chromium";v="120", "Microsoft Edge";v="120"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"none","Sec-Fetch-User":"?1",Cookie:"ext_name=ojplmecpdpgccookcobabopnaifgidhf; cf_clearance=6yZYfXQxBgjaD1eacR5zZCz7njssbxjtSZZCElTOGk0-1764836255-1.2.1.1-bzHvDcDRLp6AAYo7qvGVzJ6Gk6zaqAepuGiGhAWCGYL.ZDpw5yI4TkUIXDgAnEhGCZ9J5X2_OagzgeMHZrd8rzeyAFQXj0dmYMErcfII7_Rhq5kZ4kAtS0tl9PtaNKKd2m4taIufySXCCstl3iNLMODTjbsW_KZi8U8DauOdGSAhBd1DCGxvLlAOM.snfkhb0yQiVJcLW8Bv9IeKQac0ar_TKkV6QexqNZYiyRXnE7E; xla=s4t","Upgrade-Insecure-Requests":"1","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36 Edg/142.0.0.0"};async function j({link:t,type:o,signal:i,providerContext:u}){let{axios:s,cheerio:h}=u;try{let n=[];if(o==="movie"){let f=(await s(`${t}`,{headers:T})).data;t=(f.match(/<a\s+href="([^"]*cloud\.[^"]*)"/i)||[])[1];try{let d=h.load(f)('.btn.btn-sm.btn-outline[style="background:linear-gradient(135deg,rgb(252,185,0) 0%,rgb(0,0,0)); color: #fdf8f2;"]').parent().attr("href"),v=d?.split("/").pop(),p=d?.split("/").slice(0,-2).join("/"),g=await s.post(p+"/api/file/downlaod/",{id:v,method:"indexDownlaod",captchaValue:null},{headers:{"Content-Type":"application/json",Referer:p}});if(g.data?.status){let w=g.data?.data,D=await s.post(p+"/api/file/downlaod2/",{id:w,method:"indexDownlaod",captchaValue:null},{headers:{"Content-Type":"application/json",Referer:p}});n.push({server:"filepress",link:D.data?.data?.[0],type:"mkv"})}}catch{}}return await b(t,i,{axios:s,cheerio:h})}catch(n){return n.message.includes("Aborted"),[]}}c(j,"getStream");0&&(module.exports={getStream});

View File

@@ -1,4 +1,5 @@
import { ProviderContext, Stream } from "../types";
import { hubcloudExtracter } from "../extractors";
const headers = {
Accept:
@@ -32,8 +33,7 @@ export async function getStream({
signal: AbortSignal;
providerContext: ProviderContext;
}) {
const { axios, cheerio, extractors } = providerContext;
const { hubcloudExtracter } = extractors;
const { axios, cheerio } = providerContext;
try {
const streamLinks: Stream[] = [];
console.log("dotlink", link);
@@ -106,7 +106,7 @@ export async function getStream({
}
}
return await hubcloudExtracter(link, signal);
return await hubcloudExtracter(link, signal, { axios, cheerio });
} catch (error: any) {
console.log("getStream error: ", error);
if (error.message.includes("Aborted")) {