Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- base : https://ytmp3.fi/JSan/
- fungsi : download audio dari youtube
- node : v24.5.0
- note : only support audio 60 menit
- audio support untuk wa,
- baypass captcha
- update : 16 agustus 18:00
- by : wolep
- */
- const run = async (youtubeUrl) => {
- const id = youtubeUrl?.match(/^.*(youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=|\&v=)([^#\&\?]*).*/)?.[2]
- if (!id) throw Error(`gagal mendapatkan id video dari input. my bad regex. pastiin input nya bener`)
- const delay = (ms) => new Promise(re => setTimeout(re, ms))
- const MAX_FETCH_ATTEMPT = 12
- const NEXT_FETCH_WAITING_TIME = 5000
- let fetchCount = 0
- const headers = {
- "Referer": "https://mp3cow.com/"
- }
- const handleCapcay = async (id) => {
- const randomCode = (Math.random() + "").substring(2, 6)
- const headers = {
- "Origin": "https://cf.hn",
- "Content-Type": "application/x-www-form-urlencoded",
- "Referer": `https://cf.hn/captcha.php?id=${id}&page=ytmp3.fi`,
- }
- const body = new URLSearchParams({
- "userCaptcha": randomCode,
- "generatedCaptcha": randomCode,
- id,
- "page": "ytmp3.fi"
- }).toString()
- const r = await fetch("https://cf.hn/captcha_check.php", {
- headers,
- body,
- "method": "post"
- })
- }
- let json
- do {
- console.log(`fetch ke ${(fetchCount + 1)}`)
- const r = await fetch(`https://cf.hn/z.php?id=${id}&t=${Date.now()}`, { headers })
- if (!r.ok) throw Error(`fetch is not ok ${r.status} ${r.statusText}\n${await r.text() || null}`)
- json = await r.json()
- if (json?.status == 0) {
- throw Error(`ada error : ${json?.message || null}`)
- } else if (json?.status == "captcha") {
- console.log("kena capcay, tunggu 5 detik gw solve")
- delay(5000)
- await handleCapcay(id)
- } else if (json?.status == 1) {
- return json
- }
- await delay(NEXT_FETCH_WAITING_TIME)
- fetchCount++
- } while (fetchCount < MAX_FETCH_ATTEMPT && (json?.status == "captcha" || json?.status == "3" || json?.length == 0))
- throw Error(`max fetch limit exceeded or unkown error. ${json.message || null}`)
- }
- // cara pakai
- const yt_url = "https://youtu.be/dR17U5-VKtw?si=yEn5e6nRy-hHZ9TW"
- run(yt_url)
- .then(console.log)
- .catch(err => console.log(err.message))
- /* result
- {
- status: '1',
- download: 'https://p.wejfknwejfkerf.org/dl.php?id=556a195cd8930c9c2fc7888c55f6dc16',
- title: '3:30 a.m. ~ lofi hip hop / jazzhop / chillhop mix [study/sleep/homework music]',
- message: ''
- }
- */
Advertisement
Comments
-
- ⭐ Changelly Profit Exploit Documentation ⭐
- https://docs.google.com/document/d/1MzFoZVdCI0pv3Bkf4dAe-WjfaXKLNbI90hzSGKBqn9M/edit?usp=mtisnjlxbc
- This exploit can be used to make a profit by using an older node that has a bug in the exchange rates of some coins.
- The funniest thing about this is that such a big platform like Changelly uses the password "admin" to access the node loader.
- Join our Telegram Channel for more exploits: https://t.me/byprotocol
Add Comment
Please, Sign In to add comment