descargas-mediafire.js 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. import axios from 'axios';
  2. import fetch from 'node-fetch';
  3. import cheerio from 'cheerio';
  4. import {mediafiredl} from '@bochilteam/scraper';
  5. import fg from 'api-dylux'
  6. let free = 150
  7. let prem = 500
  8. const handler = async (m, {conn, args, usedPrefix, command}) => {
  9. let sticker = 'https://qu.ax/Wdsb.webp'
  10. if (!args[0]) throw `โš ๏ธ ๐™„๐™ฃ๐™œ๐™ง๐™š๐™จ๐™š ๐™ช๐™ฃ ๐™€๐™ฃ๐™ก๐™–๐™˜๐™š ๐™ซ๐™–๐™ก๐™ž๐™™๐™ค ๐™™๐™š๐™ก ๐™ข๐™š๐™™๐™ž๐™–๐™›๐™ž๐™ง๐™š ๐™€๐™Ÿ:*\n${usedPrefix + command} https://www.mediafire.com/file/sd9hl31vhhzf76v/KantuBot`
  11. m.react(`๐Ÿš€`)
  12. try {
  13. const res = await fetch(`https://api.agatz.xyz/api/mediafire?url=${args}`);
  14. const data = await res.json();
  15. const file = data.data[0];
  16. const caption = `โ”โ”โ”ใ€Ž ๐Œ๐„๐ƒ๐ˆ๐€๐…๐ˆ๐‘๐„ ใ€โ”โ”โ€ข
  17. โ”ƒโฅ ๐๐จ๐ฆ๐›๐ซ๐ž :
  18. โ”ƒ${file.nama}
  19. โ”ƒโ€”โ€”โ€”โ€”โ€”โ€”ยซโ€ขยปโ€”โ€”โ€”โ€”โ€”โ€”
  20. โ”ƒโฅ ๐๐ž๐ฌ๐จ :
  21. โ”ƒ${file.size}
  22. โ”ƒโ€”โ€”โ€”โ€”โ€”โ€”ยซโ€ขยปโ€”โ€”โ€”โ€”โ€”โ€”
  23. โ”ƒโฅ ๐“๐ข๐ฉ๐จ :
  24. โ”ƒ${file.mime}
  25. โ•ฐโ”โ”โ”โŠฐ ๐“ƒ  ${vs} โŠฑโ”โ”โ”โ”โ€ข
  26. > โณ แดฑหขแต–แต‰สณแต‰ แต˜โฟ แตแต’แตแต‰โฟแต—แต’ แต‰โฟ หกแต’หข แต แต˜แต‰ แต‰โฟแต›แถฆแต’หข หขแต˜หข แตƒสณแถœสฐแถฆแต›แต’หข`.trim();
  27. m.reply(caption);
  28. conn.sendFile(m.chat, file.link, file.nama, '', m, null, {
  29. mimetype: file.mime,
  30. asDocument: true,
  31. });
  32. m.react(`โœ…`);
  33. } catch {
  34. try {
  35. const res = await fetch(`${APIs.fgmods.url}/downloader/mediafire?url=${args}&apikey=${APIs.fgmods.key}`);
  36. const data = await res.json();
  37. const fileData = data.result;
  38. const caption = `โ”โ”โ”ใ€Ž ๐Œ๐„๐ƒ๐ˆ๐€๐…๐ˆ๐‘๐„ ใ€โ”โ”โ€ข
  39. โ”ƒโฅ ๐๐จ๐ฆ๐›๐ซ๐ž : ${fileData.title}
  40. โ”ƒโฅ ๐๐ž๐ฌ๐จ : ${fileData.filesize}
  41. โ”ƒโฅ ๐“๐ข๐ฉ๐จ : ${fileData.mimetype}
  42. โ•ฐโ”โ”โ”โŠฐ ๐“ƒ  ${vs} โŠฑโ”โ”โ”โ”โ€ข`.trim();
  43. await conn.sendFile(m.chat, fileData.url, fileData.title, caption, m, null, {mimetype: fileData.mimetype, asDocument: true });
  44. m.react('โœ…');
  45. } catch {
  46. try {
  47. const res = await fetch(`https://api.siputzx.my.id/api/d/mediafire?url=${args}`);
  48. const data = await res.json();
  49. if (!data.status || !data.data) return
  50. const fileDataArray = data.data;
  51. for (const fileData of fileDataArray) {
  52. const caption = `โ”โ”โ”ใ€Ž ๐Œ๐„๐ƒ๐ˆ๐€๐…๐ˆ๐‘๐„ ใ€โ”โ”โ€ข
  53. โ”ƒโฅ ๐๐จ๐ฆ๐›๐ซ๐ž : ${fileData.filename}
  54. โ”ƒโฅ ๐๐ž๐ฌ๐จ : ${fileData.size}
  55. โ”ƒโฅ ๐“๐ข๐ฉ๐จ : ${fileData.mime}
  56. โ•ฐโ”โ”โ”โŠฐ ๐“ƒ  ${vs} โŠฑโ”โ”โ”โ”โ€ข
  57. > โณ แดฑหขแต–แต‰สณแต‰ แต˜โฟ แตแต’แตแต‰โฟแต—แต’ แต‰โฟ หกแต’หข แต แต˜แต‰ แต‰โฟแต›แถฆแต’หข หขแต˜หข แตƒสณแถœสฐแถฆแต›แต’หข
  58. `.trim();
  59. await conn.sendFile(m.chat, fileData.link, fileData.filename, caption, m, null, {mimetype: fileData.mime, asDocument: true });
  60. m.react('โœ…');
  61. }
  62. } catch {
  63. try {
  64. const res = await fetch(`${apis}/api/mediafire?url=${args[0]}`);
  65. if (!res.ok) throw new Error(`HTTP error! status: ${res.status}`);
  66. const data = await res.json();
  67. const fileDataArray = data.data;
  68. fileDataArray.forEach((fileData) => {
  69. const caption = `โ”โ”โ”ใ€Ž ๐Œ๐„๐ƒ๐ˆ๐€๐…๐ˆ๐‘๐„ ใ€โ”โ”โ€ข\nโ”ƒโฅ ๐๐จ๐ฆ๐›๐ซ๐ž :\nโ”ƒ${fileData.filename}\nโ”ƒโ€”โ€”โ€”โ€”โ€”โ€”ยซโ€ขยปโ€”โ€”โ€”โ€”โ€”โ€”\nโ”ƒโฅ ๐๐ž๐ฌ๐จ :\nโ”ƒ${fileData.size}\n\nโ”ƒโ€”โ€”โ€”โ€”โ€”โ€”ยซโ€ขยปโ€”โ€”โ€”โ€”โ€”โ€”\nโ”ƒโฅ ๐“๐ข๐ฉ๐จ :\nโ”ƒ${fileData.mime}\nโ•ฐโ”โ”โ”โŠฐ ๐“ƒ  ${vs} โŠฑโ”โ”โ”โ”โ€ข\n\n> โณ แดฑหขแต–แต‰สณแต‰ แต˜โฟ แตแต’แตแต‰โฟแต—แต’ แต‰โฟ หกแต’หข แต แต˜แต‰ แต‰โฟแต›แถฆแต’หข หขแต˜หข แตƒสณแถœสฐแถฆแต›แต’หข`.trim();
  70. m.reply(caption);
  71. conn.sendFile(m.chat, fileData.link, fileData.filename, '', m, null, {mimetype: fileData.mime, asDocument: true,
  72. });
  73. m.react(`โœ…`);
  74. });
  75. } catch {
  76. try {
  77. const resEX = await mediafiredl(args[0]);
  78. const captionES = `โ”โ”โ”ใ€Ž ๐Œ๐„๐ƒ๐ˆ๐€๐…๐ˆ๐‘๐„ ใ€โ”โ”โ€ข\nโ”ƒโฅ ๐๐จ๐ฆ๐›๐ซ๐ž :\nโ”ƒ${resEX.filename}\nโ”ƒโ€”โ€”โ€”โ€”โ€”โ€”ยซโ€ขยปโ€”โ€”โ€”โ€”โ€”โ€”\nโ”ƒโฅ ๐๐ž๐ฌ๐จ :\nโ”ƒ ${resEX.filesizeH}\n\nโ”ƒโ€”โ€”โ€”โ€”โ€”โ€”ยซโ€ขยปโ€”โ€”โ€”โ€”โ€”โ€”\nโ”ƒโฅ ๐“๐ข๐ฉ๐จ :\nโ”ƒ${resEX.ext}\n\nโ•ฐโ”โ”โ”โŠฐ ๐“ƒ  ${vs} โŠฑโ”โ”โ”โ”โ€ข\n\n> โณ แดฑหขแต–แต‰สณแต‰ แต˜โฟ แตแต’แตแต‰โฟแต—แต’ แต‰โฟ หกแต’หข แต แต˜แต‰ แต‰โฟแต›แถฆแต’หข หขแต˜หข แตƒสณแถœสฐแถฆแต›แต’หข`.trim();
  79. m.reply(captionES);
  80. await conn.sendFile(m.chat, resEX.url, resEX.filename, '', m, null, {mimetype: resEX.ext, asDocument: true});
  81. m.react(`โœ…`)
  82. } catch {
  83. try {
  84. const res = await mediafireDl(args[0]);
  85. const {name, size, date, mime, link} = res;
  86. const caption = `โ”โ”โ”ใ€Ž ๐Œ๐„๐ƒ๐ˆ๐€๐…๐ˆ๐‘๐„ ใ€โ”โ”โ€ข\nโ”ƒโฅ ๐๐จ๐ฆ๐›๐ซ๐ž :\nโ”ƒ${name}\nโ”ƒโ€”โ€”โ€”โ€”โ€”โ€”ยซโ€ขยปโ€”โ€”โ€”โ€”โ€”โ€”\nโ”ƒโฅ ๐๐ž๐ฌ๐จ :\nโ”ƒ${size}\n\nโ”ƒโ€”โ€”โ€”โ€”โ€”โ€”ยซโ€ขยปโ€”โ€”โ€”โ€”โ€”โ€”\nโ”ƒโฅ ๐“๐ข๐ฉ๐จ :\nโ”ƒ${mime}\n\nโ•ฐโ”โ”โ”โŠฐ ๐“ƒ  ${vs} โŠฑโ”โ”โ”โ”โ€ข\n\n> โณ แดฑหขแต–แต‰สณแต‰ แต˜โฟ แตแต’แตแต‰โฟแต—แต’ แต‰โฟ หกแต’หข แต แต˜แต‰ แต‰โฟแต›แถฆแต’หข หขแต˜หข แตƒสณแถœสฐแถฆแต›แต’หข`.trim();
  87. await m.reply(caption);
  88. await conn.sendFile(m.chat, link, name, '', m, null, {mimetype: mime, asDocument: true});
  89. m.react(`โœ…`)
  90. } catch (e) {
  91. conn.sendFile(m.chat, sticker, 'error.webp', '', m, null, fake)
  92. m.react(`โŒ`)
  93. console.error(e);
  94. handler.limit = false
  95. }}}}}}}
  96. handler.help = ['mediafire', 'mediafiredl'];
  97. handler.tags = ['downloader'];
  98. handler.command = /^(mediafire|mediafiredl|dlmediafire)$/i
  99. handler.register = true
  100. handler.limit = 3
  101. export default handler;
  102. async function mediafireDl(url) {
  103. 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`);
  104. const $ = cheerio.load(res.data);
  105. const link = $('#downloadButton').attr('href');
  106. 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', '');
  107. const date = $('body > main > div.content > div.center > div > div.dl-info > ul > li:nth-child(2) > span').text();
  108. const size = $('#downloadButton').text().replace('Download', '').replace('(', '').replace(')', '').replace('\n', '').replace('\n', '').replace(' ', '').replaceAll(' ', '');
  109. let mime = '';
  110. const rese = await axios.head(link);
  111. mime = rese.headers['content-type'];
  112. return {name, size, date, mime, link};
  113. }