import axios from 'axios'; import fetch from 'node-fetch'; import cheerio from 'cheerio'; import {mediafiredl} from '@bochilteam/scraper'; import fg from 'api-dylux' let free = 150 let prem = 500 const handler = async (m, {conn, args, usedPrefix, command}) => { let sticker = 'https://qu.ax/Wdsb.webp' if (!args[0]) throw `โš ๏ธ ๐™„๐™ฃ๐™œ๐™ง๐™š๐™จ๐™š ๐™ช๐™ฃ ๐™€๐™ฃ๐™ก๐™–๐™˜๐™š ๐™ซ๐™–๐™ก๐™ž๐™™๐™ค ๐™™๐™š๐™ก ๐™ข๐™š๐™™๐™ž๐™–๐™›๐™ž๐™ง๐™š ๐™€๐™Ÿ:*\n${usedPrefix + command} https://www.mediafire.com/file/sd9hl31vhhzf76v/KantuBot` m.react(`๐Ÿš€`) try { const res = await fetch(`https://api.agatz.xyz/api/mediafire?url=${args}`); const data = await res.json(); const file = data.data[0]; const caption = `โ”โ”โ”ใ€Ž ๐Œ๐„๐ƒ๐ˆ๐€๐…๐ˆ๐‘๐„ ใ€โ”โ”โ€ข โ”ƒโฅ ๐๐จ๐ฆ๐›๐ซ๐ž : โ”ƒ${file.nama} โ”ƒโ€”โ€”โ€”โ€”โ€”โ€”ยซโ€ขยปโ€”โ€”โ€”โ€”โ€”โ€” โ”ƒโฅ ๐๐ž๐ฌ๐จ : โ”ƒ${file.size} โ”ƒโ€”โ€”โ€”โ€”โ€”โ€”ยซโ€ขยปโ€”โ€”โ€”โ€”โ€”โ€” โ”ƒโฅ ๐“๐ข๐ฉ๐จ : โ”ƒ${file.mime} โ•ฐโ”โ”โ”โŠฐ ๐“ƒ  ${vs} โŠฑโ”โ”โ”โ”โ€ข > โณ แดฑหขแต–แต‰สณแต‰ แต˜โฟ แตแต’แตแต‰โฟแต—แต’ แต‰โฟ หกแต’หข แต แต˜แต‰ แต‰โฟแต›แถฆแต’หข หขแต˜หข แตƒสณแถœสฐแถฆแต›แต’หข`.trim(); m.reply(caption); conn.sendFile(m.chat, file.link, file.nama, '', m, null, { mimetype: file.mime, asDocument: true, }); m.react(`โœ…`); } catch { try { const res = await fetch(`${APIs.fgmods.url}/downloader/mediafire?url=${args}&apikey=${APIs.fgmods.key}`); const data = await res.json(); const fileData = data.result; const caption = `โ”โ”โ”ใ€Ž ๐Œ๐„๐ƒ๐ˆ๐€๐…๐ˆ๐‘๐„ ใ€โ”โ”โ€ข โ”ƒโฅ ๐๐จ๐ฆ๐›๐ซ๐ž : ${fileData.title} โ”ƒโฅ ๐๐ž๐ฌ๐จ : ${fileData.filesize} โ”ƒโฅ ๐“๐ข๐ฉ๐จ : ${fileData.mimetype} โ•ฐโ”โ”โ”โŠฐ ๐“ƒ  ${vs} โŠฑโ”โ”โ”โ”โ€ข`.trim(); await conn.sendFile(m.chat, fileData.url, fileData.title, caption, m, null, {mimetype: fileData.mimetype, asDocument: true }); m.react('โœ…'); } catch { try { const res = await fetch(`https://api.siputzx.my.id/api/d/mediafire?url=${args}`); const data = await res.json(); if (!data.status || !data.data) return const fileDataArray = data.data; for (const fileData of fileDataArray) { const caption = `โ”โ”โ”ใ€Ž ๐Œ๐„๐ƒ๐ˆ๐€๐…๐ˆ๐‘๐„ ใ€โ”โ”โ€ข โ”ƒโฅ ๐๐จ๐ฆ๐›๐ซ๐ž : ${fileData.filename} โ”ƒโฅ ๐๐ž๐ฌ๐จ : ${fileData.size} โ”ƒโฅ ๐“๐ข๐ฉ๐จ : ${fileData.mime} โ•ฐโ”โ”โ”โŠฐ ๐“ƒ  ${vs} โŠฑโ”โ”โ”โ”โ€ข > โณ แดฑหขแต–แต‰สณแต‰ แต˜โฟ แตแต’แตแต‰โฟแต—แต’ แต‰โฟ หกแต’หข แต แต˜แต‰ แต‰โฟแต›แถฆแต’หข หขแต˜หข แตƒสณแถœสฐแถฆแต›แต’หข `.trim(); await conn.sendFile(m.chat, fileData.link, fileData.filename, caption, m, null, {mimetype: fileData.mime, asDocument: true }); m.react('โœ…'); } } catch { try { const res = await fetch(`${apis}/api/mediafire?url=${args[0]}`); if (!res.ok) throw new Error(`HTTP error! status: ${res.status}`); const data = await res.json(); const fileDataArray = data.data; fileDataArray.forEach((fileData) => { const caption = `โ”โ”โ”ใ€Ž ๐Œ๐„๐ƒ๐ˆ๐€๐…๐ˆ๐‘๐„ ใ€โ”โ”โ€ข\nโ”ƒโฅ ๐๐จ๐ฆ๐›๐ซ๐ž :\nโ”ƒ${fileData.filename}\nโ”ƒโ€”โ€”โ€”โ€”โ€”โ€”ยซโ€ขยปโ€”โ€”โ€”โ€”โ€”โ€”\nโ”ƒโฅ ๐๐ž๐ฌ๐จ :\nโ”ƒ${fileData.size}\n\nโ”ƒโ€”โ€”โ€”โ€”โ€”โ€”ยซโ€ขยปโ€”โ€”โ€”โ€”โ€”โ€”\nโ”ƒโฅ ๐“๐ข๐ฉ๐จ :\nโ”ƒ${fileData.mime}\nโ•ฐโ”โ”โ”โŠฐ ๐“ƒ  ${vs} โŠฑโ”โ”โ”โ”โ€ข\n\n> โณ แดฑหขแต–แต‰สณแต‰ แต˜โฟ แตแต’แตแต‰โฟแต—แต’ แต‰โฟ หกแต’หข แต แต˜แต‰ แต‰โฟแต›แถฆแต’หข หขแต˜หข แตƒสณแถœสฐแถฆแต›แต’หข`.trim(); m.reply(caption); conn.sendFile(m.chat, fileData.link, fileData.filename, '', m, null, {mimetype: fileData.mime, asDocument: true, }); m.react(`โœ…`); }); } catch { try { const resEX = await mediafiredl(args[0]); const captionES = `โ”โ”โ”ใ€Ž ๐Œ๐„๐ƒ๐ˆ๐€๐…๐ˆ๐‘๐„ ใ€โ”โ”โ€ข\nโ”ƒโฅ ๐๐จ๐ฆ๐›๐ซ๐ž :\nโ”ƒ${resEX.filename}\nโ”ƒโ€”โ€”โ€”โ€”โ€”โ€”ยซโ€ขยปโ€”โ€”โ€”โ€”โ€”โ€”\nโ”ƒโฅ ๐๐ž๐ฌ๐จ :\nโ”ƒ ${resEX.filesizeH}\n\nโ”ƒโ€”โ€”โ€”โ€”โ€”โ€”ยซโ€ขยปโ€”โ€”โ€”โ€”โ€”โ€”\nโ”ƒโฅ ๐“๐ข๐ฉ๐จ :\nโ”ƒ${resEX.ext}\n\nโ•ฐโ”โ”โ”โŠฐ ๐“ƒ  ${vs} โŠฑโ”โ”โ”โ”โ€ข\n\n> โณ แดฑหขแต–แต‰สณแต‰ แต˜โฟ แตแต’แตแต‰โฟแต—แต’ แต‰โฟ หกแต’หข แต แต˜แต‰ แต‰โฟแต›แถฆแต’หข หขแต˜หข แตƒสณแถœสฐแถฆแต›แต’หข`.trim(); m.reply(captionES); await conn.sendFile(m.chat, resEX.url, resEX.filename, '', m, null, {mimetype: resEX.ext, asDocument: true}); m.react(`โœ…`) } catch { try { const res = await mediafireDl(args[0]); const {name, size, date, mime, link} = res; const caption = `โ”โ”โ”ใ€Ž ๐Œ๐„๐ƒ๐ˆ๐€๐…๐ˆ๐‘๐„ ใ€โ”โ”โ€ข\nโ”ƒโฅ ๐๐จ๐ฆ๐›๐ซ๐ž :\nโ”ƒ${name}\nโ”ƒโ€”โ€”โ€”โ€”โ€”โ€”ยซโ€ขยปโ€”โ€”โ€”โ€”โ€”โ€”\nโ”ƒโฅ ๐๐ž๐ฌ๐จ :\nโ”ƒ${size}\n\nโ”ƒโ€”โ€”โ€”โ€”โ€”โ€”ยซโ€ขยปโ€”โ€”โ€”โ€”โ€”โ€”\nโ”ƒโฅ ๐“๐ข๐ฉ๐จ :\nโ”ƒ${mime}\n\nโ•ฐโ”โ”โ”โŠฐ ๐“ƒ  ${vs} โŠฑโ”โ”โ”โ”โ€ข\n\n> โณ แดฑหขแต–แต‰สณแต‰ แต˜โฟ แตแต’แตแต‰โฟแต—แต’ แต‰โฟ หกแต’หข แต แต˜แต‰ แต‰โฟแต›แถฆแต’หข หขแต˜หข แตƒสณแถœสฐแถฆแต›แต’หข`.trim(); await m.reply(caption); await conn.sendFile(m.chat, link, name, '', m, null, {mimetype: mime, asDocument: true}); m.react(`โœ…`) } catch (e) { conn.sendFile(m.chat, sticker, 'error.webp', '', m, null, fake) m.react(`โŒ`) console.error(e); handler.limit = false }}}}}}} handler.help = ['mediafire', 'mediafiredl']; handler.tags = ['downloader']; handler.command = /^(mediafire|mediafiredl|dlmediafire)$/i handler.register = true handler.limit = 3 export default handler; async function mediafireDl(url) { const res = await axios.get(`https://www-mediafire-com.translate.goog/${url.replace('https://www.mediafire.com/', '')}?_x_tr_sl=en&_x_tr_tl=fr&_x_tr_hl=en&_x_tr_pto=wapp`); const $ = cheerio.load(res.data); const link = $('#downloadButton').attr('href'); const name = $('body > main > div.content > div.center > div > div.dl-btn-cont > div.dl-btn-labelWrap > div.promoDownloadName.notranslate > div').attr('title').replaceAll(' ', '').replaceAll('\n', ''); const date = $('body > main > div.content > div.center > div > div.dl-info > ul > li:nth-child(2) > span').text(); const size = $('#downloadButton').text().replace('Download', '').replace('(', '').replace(')', '').replace('\n', '').replace('\n', '').replace(' ', '').replaceAll(' ', ''); let mime = ''; const rese = await axios.head(link); mime = rese.headers['content-type']; return {name, size, date, mime, link}; }