Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
MR414N-ID
GitHub Repository: MR414N-ID/botku2
Path: blob/master/node_modules/@bochilteam/scraper/lib/cjs/social-media/savefrom.js
1126 views
1
"use strict";
2
var __importDefault = (this && this.__importDefault) || function (mod) {
3
return (mod && mod.__esModule) ? mod : { "default": mod };
4
};
5
Object.defineProperty(exports, "__esModule", { value: true });
6
const got_1 = __importDefault(require("got"));
7
const vm_1 = __importDefault(require("vm"));
8
const utils_js_1 = require("../utils.js");
9
async function savefrom(url) {
10
var _a, _b;
11
let scriptJS = await (0, got_1.default)('https://worker.sf-tools.com/savefrom.php', {
12
method: 'POST',
13
headers: {
14
'content-type': 'application/x-www-form-urlencoded',
15
origin: 'https://id.savefrom.net',
16
referer: 'https://id.savefrom.net/',
17
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.74 Safari/537.36'
18
},
19
form: {
20
sf_url: encodeURI(url),
21
sf_submit: '',
22
new: 2,
23
lang: 'id',
24
app: '',
25
country: 'id',
26
os: 'Windows',
27
browser: 'Chrome',
28
channel: ' main',
29
'sf-nomad': 1
30
}
31
}).text();
32
const executeCode = '[]["filter"]["constructor"](b).call(a);';
33
if (scriptJS.indexOf(executeCode) === -1)
34
throw new utils_js_1.ScraperError(`Cannot find execute code\n${scriptJS}`);
35
scriptJS = scriptJS.replace(executeCode, `
36
try {
37
i++;
38
if (i === 2) scriptResult = ${executeCode.split('.call')[0]}.toString();
39
else (
40
${executeCode.replace(/;/, '')}
41
);
42
} catch {}
43
`);
44
const context = {
45
scriptResult: '',
46
i: 0
47
};
48
vm_1.default.createContext(context);
49
new vm_1.default.Script(scriptJS).runInContext(context);
50
const json = JSON.parse((_b = (_a = context.scriptResult.split('window.parent.sf.videoResult.show(')) === null || _a === void 0 ? void 0 : _a[1].split(');')) === null || _b === void 0 ? void 0 : _b[0]);
51
return json;
52
}
53
exports.default = savefrom;
54
//# sourceMappingURL=savefrom.js.map
55