mirror of
https://github.com/vega-org/vega-providers.git
synced 2026-04-17 23:51:44 +00:00
minify
This commit is contained in:
138
dist/primewire/stream.js
vendored
138
dist/primewire/stream.js
vendored
@@ -1,137 +1 @@
|
||||
"use strict";
|
||||
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
||||
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
||||
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) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
||||
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
||||
});
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.getStream = void 0;
|
||||
const getStream = function (_a) {
|
||||
return __awaiter(this, arguments, void 0, function* ({ link: url, type, providerContext, }) {
|
||||
var _b, _c, _d, _e, _f, _g;
|
||||
const { axios, cheerio } = providerContext;
|
||||
try {
|
||||
console.log("pwGetStream", type, url);
|
||||
const baseUrl = url.split("/").slice(0, 3).join("/");
|
||||
const streamLinks = [];
|
||||
const urls = [];
|
||||
const res = yield axios.get(url);
|
||||
const data = res.data;
|
||||
const $ = cheerio.load(data);
|
||||
$('tr:contains("mixdrop")').map((i, element) => {
|
||||
const id = $(element).find(".wp-menu-btn").attr("data-wp-menu");
|
||||
const size = $(element).find(".wp-menu-btn").next().text();
|
||||
if (id) {
|
||||
urls.push({ id: baseUrl + "/links/go/" + id, size });
|
||||
}
|
||||
});
|
||||
console.log("urls", urls);
|
||||
for (const url of urls) {
|
||||
const res2 = yield axios.head(url.id);
|
||||
const location = (_b = res2.request) === null || _b === void 0 ? void 0 : _b.responseURL.replace("/f/", "/e/");
|
||||
const res3 = yield fetch(location, {
|
||||
credentials: "include",
|
||||
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",
|
||||
"Upgrade-Insecure-Requests": "1",
|
||||
"Sec-Fetch-Dest": "iframe",
|
||||
"Sec-Fetch-Mode": "navigate",
|
||||
"Sec-Fetch-Site": "same-origin",
|
||||
Pragma: "no-cache",
|
||||
"Cache-Control": "no-cache",
|
||||
referer: (_c = res2.request) === null || _c === void 0 ? void 0 : _c.responseURL,
|
||||
},
|
||||
referrer: (_d = res2.request) === null || _d === void 0 ? void 0 : _d.responseURL,
|
||||
method: "GET",
|
||||
mode: "cors",
|
||||
});
|
||||
const data3 = yield res3.text();
|
||||
// let MDCore: any = {};
|
||||
// Step 1: Extract the function parameters and the encoded string
|
||||
var functionRegex = /eval\(function\((.*?)\)\{.*?return p\}.*?\('(.*?)'\.split/;
|
||||
var match = functionRegex.exec(data3);
|
||||
let p = "";
|
||||
if (match) {
|
||||
// var params = match[1].split(',').map(param => param.trim());
|
||||
var encodedString = match[2];
|
||||
console.log("Encoded String:", encodedString);
|
||||
// console.log('Parameters:', params);
|
||||
// console.log('Encoded String:', encodedString.split("',36,")[0], '🔥🔥');
|
||||
const base = Number(encodedString.split(",'|MDCore|")[0].split(",")[encodedString.split(",'|MDCore|")[0].split(",").length - 1]);
|
||||
console.log("Base:", base);
|
||||
p = (_e = encodedString.split(`',${base},`)) === null || _e === void 0 ? void 0 : _e[0].trim();
|
||||
let a = base;
|
||||
let c = encodedString.split(`',${base},`)[1].slice(2).split("|").length;
|
||||
let k = encodedString.split(`',${base},`)[1].slice(2).split("|");
|
||||
// console.log('p:', p);
|
||||
// console.log('a:', a);
|
||||
// console.log('c:', c);
|
||||
// console.log('k:', k);
|
||||
const decode = function (p, a, c, k, e, d) {
|
||||
e = function (c) {
|
||||
return c.toString(36);
|
||||
};
|
||||
if (!"".replace(/^/, String)) {
|
||||
while (c--) {
|
||||
d[c.toString(a)] = k[c] || c.toString(a);
|
||||
}
|
||||
k = [
|
||||
function (e) {
|
||||
return d[e];
|
||||
},
|
||||
];
|
||||
e = function () {
|
||||
return "\\w+";
|
||||
};
|
||||
c = 1;
|
||||
}
|
||||
while (c--) {
|
||||
if (k[c]) {
|
||||
p = p.replace(new RegExp("\\b" + e(c) + "\\b", "g"), k[c]);
|
||||
}
|
||||
}
|
||||
return p;
|
||||
};
|
||||
const decoded = decode(p, a, c, k, 0, {});
|
||||
// get MDCore.wurl=
|
||||
const wurl = (_f = decoded.match(/MDCore\.wurl="([^"]+)"/)) === null || _f === void 0 ? void 0 : _f[1];
|
||||
console.log("wurl:", wurl);
|
||||
const streamUrl = "https:" + wurl;
|
||||
console.log("streamUrl:", streamUrl);
|
||||
streamLinks.push({
|
||||
server: "Mixdrop " + url.size,
|
||||
link: streamUrl,
|
||||
type: "mp4",
|
||||
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",
|
||||
"Upgrade-Insecure-Requests": "1",
|
||||
"Sec-Fetch-Dest": "iframe",
|
||||
"Sec-Fetch-Mode": "navigate",
|
||||
"Sec-Fetch-Site": "same-origin",
|
||||
Pragma: "no-cache",
|
||||
"Cache-Control": "no-cache",
|
||||
referer: (_g = res2.request) === null || _g === void 0 ? void 0 : _g.responseURL,
|
||||
},
|
||||
});
|
||||
}
|
||||
else {
|
||||
console.log("No match found");
|
||||
}
|
||||
}
|
||||
return streamLinks;
|
||||
}
|
||||
catch (err) {
|
||||
console.error(err);
|
||||
return [];
|
||||
}
|
||||
});
|
||||
};
|
||||
exports.getStream = getStream;
|
||||
"use strict";var __awaiter=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(r,o){function c(e){try{s(i.next(e))}catch(e){o(e)}}function a(e){try{s(i.throw(e))}catch(e){o(e)}}function s(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(c,a)}s((i=i.apply(e,t||[])).next())})};Object.defineProperty(exports,"__esModule",{value:!0}),exports.getStream=void 0;const getStream=function(e){return __awaiter(this,arguments,void 0,function*({link:e,type:t,providerContext:n}){var i,r,o,c,a,s;const{axios:l,cheerio:p}=n;try{const t=e.split("/").slice(0,3).join("/"),n=[],h=[],f=(yield l.get(e)).data,m=p.load(f);m('tr:contains("mixdrop")').map((e,n)=>{const i=m(n).find(".wp-menu-btn").attr("data-wp-menu"),r=m(n).find(".wp-menu-btn").next().text();i&&h.push({id:t+"/links/go/"+i,size:r})});for(const e of h){const t=yield l.head(e.id),p=null===(i=t.request)||void 0===i?void 0:i.responseURL.replace("/f/","/e/"),h=yield fetch(p,{credentials:"include",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","Upgrade-Insecure-Requests":"1","Sec-Fetch-Dest":"iframe","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"same-origin",Pragma:"no-cache","Cache-Control":"no-cache",referer:null===(r=t.request)||void 0===r?void 0:r.responseURL},referrer:null===(o=t.request)||void 0===o?void 0:o.responseURL,method:"GET",mode:"cors"}),f=yield h.text();var u=/eval\(function\((.*?)\)\{.*?return p\}.*?\('(.*?)'\.split/.exec(f);let m="";if(u){var d=u[2];const i=Number(d.split(",'|MDCore|")[0].split(",")[d.split(",'|MDCore|")[0].split(",").length-1]);m=null===(c=d.split(`',${i},`))||void 0===c?void 0:c[0].trim();let r=i,o=d.split(`',${i},`)[1].slice(2).split("|").length,l=d.split(`',${i},`)[1].slice(2).split("|");const p=function(e,t,n,i,r,o){if(r=function(e){return e.toString(36)},!"".replace(/^/,String)){for(;n--;)o[n.toString(t)]=i[n]||n.toString(t);i=[function(e){return o[e]}],r=function(){return"\\w+"},n=1}for(;n--;)i[n]&&(e=e.replace(new RegExp("\\b"+r(n)+"\\b","g"),i[n]));return e},h=p(m,r,o,l,0,{}),f="https:"+(null===(a=h.match(/MDCore\.wurl="([^"]+)"/))||void 0===a?void 0:a[1]);n.push({server:"Mixdrop "+e.size,link:f,type:"mp4",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","Upgrade-Insecure-Requests":"1","Sec-Fetch-Dest":"iframe","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"same-origin",Pragma:"no-cache","Cache-Control":"no-cache",referer:null===(s=t.request)||void 0===s?void 0:s.responseURL}})}}return n}catch(e){return[]}})};exports.getStream=getStream;
|
||||
Reference in New Issue
Block a user