diff --git a/dist/luxMovies/posts.js b/dist/luxMovies/posts.js index 3d51791..796b92e 100644 --- a/dist/luxMovies/posts.js +++ b/dist/luxMovies/posts.js @@ -1 +1 @@ -"use strict";var __defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropNames=Object.getOwnPropertyNames,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:!0,configurable:!0,writable:!0,value:value}):obj[key]=value,__spreadValues=(a,b)=>{for(var prop in b||(b={}))__hasOwnProp.call(b,prop)&&__defNormalProp(a,prop,b[prop]);if(__getOwnPropSymbols)for(var prop of __getOwnPropSymbols(b))__propIsEnum.call(b,prop)&&__defNormalProp(a,prop,b[prop]);return a},__spreadProps=(a,b)=>__defProps(a,__getOwnPropDescs(b)),__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),posts_exports={};__export(posts_exports,{getPosts:()=>getPosts,getSearchPosts:()=>getSearchPosts});var headers={Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,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:"_ga=GA1.1.10613951.1756380104; xla=s4t; _ga_1CG5NQ0F53=GS2.1.s1756380103$o1$g1$t1756380120$j43$l0$h0","Upgrade-Insecure-Requests":"1","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 Edg/138.0.0.0"},getPosts=__name(_0=>__async(null,[_0],function*({filter:filter,page:page,providerValue:providerValue,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl,axios:axios,cheerio:cheerio}=providerContext,baseUrl=yield getBaseUrl("lux");console.log("vegaGetPosts baseUrl:",providerValue,baseUrl);const url=`${baseUrl}/${filter}/page/${page}/`;return console.log("vegaGetPosts url:",url),posts(baseUrl,url,signal,headers,axios,cheerio)}),"getPosts"),getSearchPosts=__name(_0=>__async(null,[_0],function*({searchQuery:searchQuery,page:page,providerValue:providerValue,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl,axios:axios,cheerio:cheerio}=providerContext,baseUrl=yield getBaseUrl("Vega");console.log("vegaGetPosts baseUrl:",providerValue,baseUrl);const url=`${baseUrl}/search.php?q=${searchQuery}&page=${page}`;console.log("vegaGetPosts url:",url);try{const data=(yield axios.get(url,{headers:__spreadProps(__spreadValues({},headers),{Referer:baseUrl}),signal:signal})).data,posts2=[];return(null==data?void 0:data.hits)&&data.hits.forEach(hit=>{const doc=hit.document,post={title:doc.post_title.replace("Download","").trim(),link:doc.permalink.startsWith("http")?doc.permalink:`${baseUrl}${doc.permalink}`,image:doc.post_thumbnail};posts2.push(post)}),posts2}catch(error){return console.error("vegaGetSearchPosts error:",error),[]}}),"getSearchPosts");function posts(_0,_1,_2){return __async(this,arguments,function*(baseUrl,url,signal,headers2={},axios,cheerio){var _a,_b;try{const urlRes=yield fetch(url,{headers:__spreadProps(__spreadValues({},headers2),{Referer:baseUrl}),signal:signal}),$=cheerio.load(yield urlRes.text()),posts2=[];return null==(_b=null==(_a=$(".blog-items,.post-list,#archive-container,.movies-grid"))?void 0:_a.children("article,.entry-list-item,a"))||_b.each((index,element)=>{var _a2,_b2,_c,_d,_e,_f,_g,_h,_i,_j,_k,_l,_m;const post={title:((null==(_e=null==(_d=null==(_c=null==(_b2=null==(_a2=$(element))?void 0:_a2.find(".entry-title,.poster-title"))?void 0:_b2.text())?void 0:_c.replace("Download",""))?void 0:_d.match(/^(.*?)\s*\((\d{4})\)|^(.*?)\s*\((Season \d+)\)/))?void 0:_e[0])||(null==(_h=null==(_g=null==(_f=$(element))?void 0:_f.find("a"))?void 0:_g.attr("title"))?void 0:_h.replace("Download",""))||(null==(_j=null==(_i=$(element))?void 0:_i.find(".post-title,.poster-title").text())?void 0:_j.replace("Download",""))||"").trim(),link:(null==(_l=null==(_k=$(element))?void 0:_k.find("a"))?void 0:_l.attr("href"))||(null==(_m=$(element))?void 0:_m.attr("href"))||"",image:$(element).find("a").find("img").attr("data-lazy-src")||$(element).find("a").find("img").attr("data-src")||$(element).find("a").find("img").attr("src")||$(element).find("img").attr("src")||""};post.image.startsWith("//")&&(post.image="https:"+post.image),console.log("vegaGetPosts post:",post),posts2.push(post)}),posts2}catch(error){return console.error("vegaGetPosts error:",error),[]}})}__name(posts,"posts"),exports.getPosts=getPosts,exports.getSearchPosts=getSearchPosts; \ No newline at end of file +"use strict";var __defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropNames=Object.getOwnPropertyNames,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:!0,configurable:!0,writable:!0,value:value}):obj[key]=value,__spreadValues=(a,b)=>{for(var prop in b||(b={}))__hasOwnProp.call(b,prop)&&__defNormalProp(a,prop,b[prop]);if(__getOwnPropSymbols)for(var prop of __getOwnPropSymbols(b))__propIsEnum.call(b,prop)&&__defNormalProp(a,prop,b[prop]);return a},__spreadProps=(a,b)=>__defProps(a,__getOwnPropDescs(b)),__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),posts_exports={};__export(posts_exports,{getPosts:()=>getPosts,getSearchPosts:()=>getSearchPosts});var headers={Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,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:"_ga=GA1.1.10613951.1756380104; xla=s4t; _ga_1CG5NQ0F53=GS2.1.s1756380103$o1$g1$t1756380120$j43$l0$h0","Upgrade-Insecure-Requests":"1","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 Edg/138.0.0.0"},getPosts=__name(_0=>__async(null,[_0],function*({filter:filter,page:page,providerValue:providerValue,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl,axios:axios,cheerio:cheerio}=providerContext,baseUrl=yield getBaseUrl("lux");console.log("vegaGetPosts baseUrl:",providerValue,baseUrl);const url=`${baseUrl}/${filter}/page/${page}/`;return console.log("vegaGetPosts url:",url),posts(baseUrl,url,signal,headers,axios,cheerio)}),"getPosts"),getSearchPosts=__name(_0=>__async(null,[_0],function*({searchQuery:searchQuery,page:page,providerValue:providerValue,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl,axios:axios,cheerio:cheerio}=providerContext,baseUrl=yield getBaseUrl("Vega");console.log("vegaGetPosts baseUrl:",providerValue,baseUrl);const url=`${baseUrl}/search.php?q=${searchQuery}&page=${page}`;console.log("vegaGetPosts url:",url);try{const data=(yield axios.get(url,{headers:__spreadProps(__spreadValues({},headers),{Referer:baseUrl}),signal:signal})).data,posts2=[];return(null==data?void 0:data.hits)&&data.hits.forEach(hit=>{const doc=hit.document,post={title:doc.post_title.replace("Download","").trim(),link:doc.permalink.startsWith("http")?doc.permalink:`${baseUrl}${doc.permalink}`,image:doc.post_thumbnail};posts2.push(post)}),posts2}catch(error){return console.error("vegaGetSearchPosts error:",error),[]}}),"getSearchPosts");function posts(_0,_1,_2){return __async(this,arguments,function*(baseUrl,url,signal,headers2={},axios,cheerio){var _a,_b;try{const urlRes=yield fetch(url,{headers:__spreadProps(__spreadValues({},headers2),{Referer:baseUrl}),signal:signal}),$=cheerio.load(yield urlRes.text()),posts2=[];return null==(_b=null==(_a=$(".blog-items,.post-list,#archive-container,.movies-grid"))?void 0:_a.children("article,.entry-list-item,a"))||_b.each((index,element)=>{var _a2,_b2,_c,_d,_e,_f,_g,_h,_i,_j,_k,_l,_m;const post={title:((null==(_e=null==(_d=null==(_c=null==(_b2=null==(_a2=$(element))?void 0:_a2.find(".entry-title,.poster-title"))?void 0:_b2.text())?void 0:_c.replace("Download",""))?void 0:_d.match(/^(.*?)\s*\((\d{4})\)|^(.*?)\s*\((Season \d+)\)/))?void 0:_e[0])||(null==(_h=null==(_g=null==(_f=$(element))?void 0:_f.find("a"))?void 0:_g.attr("title"))?void 0:_h.replace("Download",""))||(null==(_j=null==(_i=$(element))?void 0:_i.find(".post-title,.poster-title").text())?void 0:_j.replace("Download",""))||"").trim(),link:(null==(_l=null==(_k=$(element))?void 0:_k.find("a"))?void 0:_l.attr("href"))||(null==(_m=$(element))?void 0:_m.attr("href"))||"",image:$(element).find("a").find("img").attr("data-lazy-src")||$(element).find("a").find("img").attr("data-src")||$(element).find("a").find("img").attr("src")||$(element).find("img").attr("data-src")||$(element).find("img").attr("src")||""};post.image.startsWith("//")&&(post.image="https:"+post.image),console.log("vegaGetPosts post:",post),posts2.push(post)}),posts2}catch(error){return console.error("vegaGetPosts error:",error),[]}})}__name(posts,"posts"),exports.getPosts=getPosts,exports.getSearchPosts=getSearchPosts; \ No newline at end of file diff --git a/dist/showbox/posts.js b/dist/showbox/posts.js index 5da70b5..3d1d7a4 100644 --- a/dist/showbox/posts.js +++ b/dist/showbox/posts.js @@ -1 +1 @@ -"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),posts_exports={};__export(posts_exports,{getPosts:()=>getPosts,getSearchPosts:()=>getSearchPosts});var getPosts=__name(function(_0){return __async(this,arguments,function*({filter:filter,page:page,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl,axios:axios,cheerio:cheerio}=providerContext,baseUrl=yield getBaseUrl("showbox");return posts({url:`${baseUrl+filter}?page=${page}/`,signal:signal,baseUrl:baseUrl,axios:axios,cheerio:cheerio})})},"getPosts"),getSearchPosts=__name(function(_0){return __async(this,arguments,function*({searchQuery:searchQuery,page:page,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl,axios:axios,cheerio:cheerio}=providerContext,baseUrl=yield getBaseUrl("showbox");return posts({url:`${baseUrl}/search?keyword=${searchQuery}&page=${page}`,signal:signal,baseUrl:baseUrl,axios:axios,cheerio:cheerio})})},"getSearchPosts");function posts(_0){return __async(this,arguments,function*({url:url,signal:signal,axios:axios,cheerio:cheerio}){try{const data=(yield axios.get(url,{signal:signal})).data,$=cheerio.load(data),catalog=[];return $(".movie-item,.flw-item").map((i,element)=>{const title=$(element).find(".film-name").text().trim(),link=$(element).find("a").attr("href"),image=$(element).find("img").attr("src");title&&link&&image&&catalog.push({title:title,link:link,image:image})}),catalog}catch(err){return[]}})}__name(posts,"posts"),exports.getPosts=getPosts,exports.getSearchPosts=getSearchPosts; \ No newline at end of file +"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),posts_exports={};__export(posts_exports,{getPosts:()=>getPosts,getSearchPosts:()=>getSearchPosts});var getPosts=__name(function(_0){return __async(this,arguments,function*({filter:filter,page:page,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl,axios:axios,cheerio:cheerio}=providerContext,baseUrl=yield getBaseUrl("showbox");return posts({url:`${baseUrl+filter}?page=${page}/`,signal:signal,baseUrl:baseUrl,axios:axios,cheerio:cheerio})})},"getPosts"),getSearchPosts=__name(function(_0){return __async(this,arguments,function*({searchQuery:searchQuery,page:page,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl,axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext,baseUrl=yield getBaseUrl("showbox");return posts({url:`${baseUrl}/search?keyword=${searchQuery}&page=${page}`,signal:signal,baseUrl:baseUrl,axios:axios,cheerio:cheerio,headers:commonHeaders})})},"getSearchPosts");function posts(_0){return __async(this,arguments,function*({url:url,signal:signal,axios:axios,cheerio:cheerio,headers:headers}){let lastError;for(let attempt=1;attempt<=3;attempt++)try{const data=(yield axios.get(url,{signal:signal,headers:headers})).data;console.log(data);const $=cheerio.load(data),catalog=[];return $(".movie-item,.flw-item").map((i,element)=>{const title=$(element).find(".film-name").text().trim(),link=$(element).find("a").attr("href"),image=$(element).find("img").attr("src");console.log(title,link,image),title&&link&&image&&catalog.push({title:title,link:link,image:image})}),catalog}catch(err){if(lastError=err,signal.aborted||3===attempt)throw err}throw lastError})}__name(posts,"posts"),exports.getPosts=getPosts,exports.getSearchPosts=getSearchPosts; \ No newline at end of file diff --git a/dist/showbox/stream.js b/dist/showbox/stream.js index 852950d..f32ef72 100644 --- a/dist/showbox/stream.js +++ b/dist/showbox/stream.js @@ -1 +1 @@ -"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var getStream=__name(function(_0){return __async(this,arguments,function*({link:id,signal:signal,providerContext:providerContext}){try{const{axios:axios,cheerio:cheerio}=providerContext,stream=[],[,epId]=id.split("&"),url=`https://febbox.vercel.app/api/video-quality?fid=${epId}`,data=(yield axios.get(url,{signal:signal})).data,$=cheerio.load(data.html);return $(".file_quality").each((i,el)=>{const server=$(el).find("p.name").text()+" - "+$(el).find("p.size").text()+" - "+$(el).find("p.speed").text(),link=$(el).attr("data-url");link&&stream.push({server:server,type:"mkv",link:link})}),stream}catch(err){return[]}})},"getStream");exports.getStream=getStream; \ No newline at end of file +"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var getStream=__name(function(_0){return __async(this,arguments,function*({link:id,signal:signal,providerContext:providerContext}){try{const{axios:axios,cheerio:cheerio}=providerContext,stream=[],[,epId]=id.split("&"),url=`https://feb.8man.workers.dev/?fid=${epId}`,data=(yield axios.get(url,{signal:signal})).data,$=cheerio.load(data.html);return $(".file_quality").each((i,el)=>{const server=$(el).find("p.name").text()+" - "+$(el).find("p.size").text()+" - "+$(el).find("p.speed").text(),link=$(el).attr("data-url");link&&stream.push({server:server,type:"mkv",link:link})}),console.log(stream),stream}catch(err){return[]}})},"getStream");exports.getStream=getStream; \ No newline at end of file diff --git a/providers/showbox/posts.ts b/providers/showbox/posts.ts index cd17cc3..4d7906d 100644 --- a/providers/showbox/posts.ts +++ b/providers/showbox/posts.ts @@ -32,10 +32,17 @@ export const getSearchPosts = async function ({ signal: AbortSignal; providerContext: ProviderContext; }): Promise { - const { getBaseUrl, axios, cheerio } = providerContext; + const { getBaseUrl, axios, cheerio, commonHeaders } = providerContext; const baseUrl = await getBaseUrl("showbox"); const url = `${baseUrl}/search?keyword=${searchQuery}&page=${page}`; - return posts({ url, signal, baseUrl, axios, cheerio }); + return posts({ + url, + signal, + baseUrl, + axios, + cheerio, + headers: commonHeaders, + }); }; async function posts({ @@ -44,32 +51,46 @@ async function posts({ // baseUrl, axios, cheerio, + headers, }: { url: string; signal: AbortSignal; baseUrl: string; axios: ProviderContext["axios"]; cheerio: ProviderContext["cheerio"]; + headers?: Record; }): Promise { - try { - const res = await axios.get(url, { signal }); - const data = res.data; - const $ = cheerio.load(data); - const catalog: Post[] = []; - $(".movie-item,.flw-item").map((i, element) => { - const title = $(element).find(".film-name").text().trim(); - const link = $(element).find("a").attr("href"); - const image = $(element).find("img").attr("src"); - if (title && link && image) { - catalog.push({ - title: title, - link: link, - image: image, - }); + const maxRetries = 3; + let lastError: unknown; + + for (let attempt = 1; attempt <= maxRetries; attempt++) { + try { + const res = await axios.get(url, { signal, headers: headers }); + const data = res.data; + console.log(data); + const $ = cheerio.load(data); + const catalog: Post[] = []; + $(".movie-item,.flw-item").map((i, element) => { + const title = $(element).find(".film-name").text().trim(); + const link = $(element).find("a").attr("href"); + const image = $(element).find("img").attr("src"); + console.log(title, link, image); + if (title && link && image) { + catalog.push({ + title: title, + link: link, + image: image, + }); + } + }); + return catalog; + } catch (err) { + lastError = err; + if (signal.aborted || attempt === maxRetries) { + throw err; } - }); - return catalog; - } catch (err) { - return []; + } } + + throw lastError; } diff --git a/providers/showbox/stream.ts b/providers/showbox/stream.ts index b40efc8..3a894ed 100644 --- a/providers/showbox/stream.ts +++ b/providers/showbox/stream.ts @@ -15,7 +15,7 @@ export const getStream = async function ({ const { axios, cheerio } = providerContext; const stream: Stream[] = []; const [, epId] = id.split("&"); - const url = `https://febbox.vercel.app/api/video-quality?fid=${epId}`; + const url = `https://feb.8man.workers.dev/?fid=${epId}`; const res = await axios.get(url, { signal }); const data = res.data; const $ = cheerio.load(data.html); @@ -35,6 +35,7 @@ export const getStream = async function ({ }); } }); + console.log(stream); return stream; } catch (err) { return [];