UNPKG

@davidpunya/web-scraper

Version:

The library web scraper for Restfull API's

110 lines (108 loc) 4.26 kB
const axios = require("axios"); const FormData = require("form-data"); const cheerio = require("cheerio"); const fs = require("fs"); const util = require("util"); const Function = require("../dist/functions"); const fetch = (...args) => import('node-fetch').then(({default: fetch}) => fetch(...args)); const Func = new Function(); module.exports = class AI { simsimi = async(text, lang = 'id') => { try { let res = await (await axios.post('https://simsimi.vn/web/simtalk', `text=${encodeURI(text)}&lc=${lang}`, { headers: { 'Accept': '*/*', 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8', 'Referer': 'https://simsimi.net/', 'User-Agent': 'Mozilla/5.0 (Linux; Android 6.0.1; SM-J500G) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Mobile Safari/537.36' } })).data if (res.success.match(new RegExp('Aku tidak mengerti', 'g'))) return { status: 404, creator: "David XD" } return { status: 200, cretor: "David XD", result: res.success } } catch (e) { console.log(e) return { status: 500, creator: "David XD", message: util.format(e) } } }; upscale = async(buffer, scale = 2) => { if (!Buffer.isBuffer(buffer)) return { status: 404, creator: "David XD", msg: "Media Is Not A Buffer!!!" }; if (scale > 4) return { status: 404, creator: "David XD", msg: "Scale " + scale + " Is Not Avaible!!!, Maksimum Scale Is 4!!!" }; const result = { status: 200, creator: "David XD", result: {} }; try { const form = new FormData(); form.append("myfile", buffer); form.append("scaleRadio", scale); form.append("isLogin", 0); const upload = (await axios({ url: "https://get1.imglarger.com/api/Upscaler/Upload", method: "POST", headers: { Accept: "application/json, text/plain, */*", "Content-Type": "multipart/form-data; boundary=" + + form._boundary, Origin: "https://imgupscaler.com", Referer: "https://imgupscaler.com/", "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36" }, data: form })).data.data.code; const res = (await axios({ url: "https://get1.imglarger.com/api/Upscaler/CheckStatus", method: "POST", headers: { Accept: "application/json, text/plain, */*", "Content-Type": "application/json", Origin: "https://imgupscaler.com", Referer: "https://imgupscaler.com/", "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36" }, data: { "code": upload, "scaleRadio": 4, "isLogin": 0 } })).data.data; if (res.status === "waiting") { return { status: 204, creator: "David XD", msg: "Waiting..." }; } else { result.result = { data: res.downloadUrls[0], size: Func.bytesToSize(res.filesize) }; }; } catch (e) { console.log(e) return { status: 500, creator: "David XD", message: util.format(e) }; }; }; };