╔══════════════════════════════════════════════════╗ ║ CODE REPOSITORY ARCHIVE ║ ╠══════════════════════════════════════════════════╣ ║ Repository: Garpan ║ ║ Generated: 10/29/2026, 2:10:40 PM ║ ║ Files: 1 ║ ║ Description: No description ║ ╚══════════════════════════════════════════════════╝ FILE SUMMARY ──────────────────────────────────────────────────── Total files: 1 Total size: 6016 characters Folder structure: Garpan/ Languages: - python: 1 files FILE CONTENTS ════════════════════════════════════════════════════ ┌── FILE 01: Garpan/garapan.py │ Size: 6016 characters │ Language: python │ Created: 10/15/2026 └──────────────────────────────────────────────────── # muse_farm_v3.py - handle waitlist + auto lanjut akun berikutnya import time import asyncio import sqlite3 from playwright.async_api import async_playwright REF_CODE = "K851O1" HEADLESS = False AKUN = [ ("kikisyarifwudy@gmail.com", ""), ("kiki@nizwara.qzz.io", ""), ] UA = ( "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 " "(KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36" ) async def redeem_ref(pg, code): if not code: return try: # cek waitlist dulu waitlist = pg.locator("text=You're on the waitlist, text=isn't available in your country").first if await waitlist.count() > 0: print("[!] akun masuk WAITLIST, skip redeem") return print(f"[*] coba redeem ref {code}") await pg.goto("https://muse.ai/settings", wait_until="domcontentloaded") await pg.wait_for_timeout(4000) # cek lagi waitlist di settings if await pg.locator("text=waitlist").count() > 0: print("[!] settings juga waitlist, skip") return inp = pg.locator("input[name*='refer'], input[name*='promo'], input[name*='invite'], input[placeholder*='code' i]").first if await inp.count() > 0: await inp.fill(code) btn = pg.locator("button:has-text('Redeem'), button:has-text('Apply'), button:has-text('Claim')").first if await btn.count() > 0: await btn.click() await pg.wait_for_timeout(3000) print("[+] ref redeem attempt done") except Exception as e: print(f"[!] redeem skip: {e}") async def satu_akun(email_, kode): print(f"\n=== Proses {email_} ===") try: async with async_playwright() as p: b = await p.chromium.launch( headless=HEADLESS, args=["--disable-blink-features=AutomationControlled", "--no-sandbox"] ) ctx = await b.new_context( user_agent=UA, viewport={"width": 1366, "height": 768}, locale="en-US", timezone_id="America/New_York" ) await ctx.add_init_script("Object.defineProperty(navigator,'webdriver',{get:()=>undefined});") pg = await ctx.new_page() await pg.goto("https://muse.ai", wait_until="domcontentloaded") await pg.wait_for_timeout(5000) email_selector = "input[type='email'], input[name='email'], input[name='identifier'], input[autocomplete='email'], input[placeholder*='Email' i]" try: await pg.wait_for_selector(email_selector + ", input[type='tel'], input[placeholder*='Mobile' i]", timeout=15000) except: # cek waitlist langsung if await pg.locator("text=You're on the waitlist").count() > 0: print("[!] LANGSUNG WAITLIST - region diblock") else: print("[!] kolom gak ketemu, coba isi manual") input(f"[*] Isi manual untuk {email_} di browser, lalu Enter...") try: loc = pg.locator(email_selector).first if await loc.count() > 0 and await loc.is_visible(): await loc.fill(email_, timeout=10000) print(f"[+] email {email_} diisi") await pg.wait_for_timeout(1000) btn = pg.locator("button:has-text('Continue'), button[type='submit']").first if await btn.count() > 0: await btn.click() except Exception as e: print(f"[!] auto fill gagal: {e}") input(f"[*] isi manual untuk {email_} lalu Enter...") # OTP await pg.wait_for_timeout(2000) if kode: try: await pg.fill("input[autocomplete='one-time-code'], input[name='code'], input[type='tel']", kode) await pg.click("button:has-text('Verify'), button[type='submit']") except: pass else: # cek apakah sudah masuk waitlist, kalau iya jangan minta OTP lama2 if await pg.locator("text=You're on the waitlist").count() > 0: print("[!] sudah waitlist, skip OTP") else: input(f"[*] cek OTP {email_} di inbox, isi di browser, lalu Enter...") await pg.wait_for_timeout(3000) # cek final status if await pg.locator("text=You're on the waitlist").count() > 0: print(f"[!] {email_} => WAITLIST (butuh VPN US)") status = "waitlist" else: print(f"[+] {email_} => LOGIN OK") status = "ok" await redeem_ref(pg, REF_CODE) # Simpan con = sqlite3.connect("muse.sqlite") con.execute("CREATE TABLE IF NOT EXISTS akun(email text, ts text, status text)") con.execute("INSERT INTO akun VALUES(?,?,?)", (email_, time.strftime("%Y-%m-%d %H:%M:%S"), status)) con.commit() con.close() print(f"[+] {email_} selesai status={status}, tutup browser 2 detik lagi...") await pg.wait_for_timeout(2000) await b.close() return email_ except Exception as e: print(f"[X] ERROR di {email_}: {e}") try: await b.close() except: pass return None async def main(): print(f"[*] Mulai farm {len(AKUN)} akun") for i, (email_, kode) in enumerate(AKUN, 1): print(f"\n--- Akun {i}/{len(AKUN)} ---") await satu_akun(email_, kode) if i < len(AKUN): print("[*] lanjut ke akun berikutnya dalam 3 detik...") await asyncio.sleep(3) print("\n=== SEMUA SELESAI ===") print("Cek muse.sqlite untuk hasilnya") if __name__ == "__main__": asyncio.run(main()) ════════════════════════════════════════════════════════════ ARCHIVE COMPLETE - 1 files exported Location: Garpan/ Exported: 10/29/2026, 2:10:40 PM Source: CodeHub Repository ════════════════════════════════════════════════════════════