Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Suno Harvester

Suno Harvester is an automated Python utility designed to bypass UI-based limitations and securely harvest your entire Suno AI library of generated audio clips. It leverages Playwright via the Chrome Debugging Protocol to piggyback on your existing authenticated session, capturing backend metadata over the network layer and then systematically bulk-downloading the MP3s and metadata directly to your local drive.

Features

  • Session Hijacking (The Good Kind): Connects to your existing Chrome instance to bypass authentication hurdles.
  • Deep Library Scraping: Intercepts graphql / api endpoints natively via Playwright CDP to build a local ledger of every clip.
  • Aggressive Paginator: Automatically simulates endless scrolling, ensuring it reaches the very bottom of libraries containing thousands of songs.
  • Safe Asynchronous Downloads: Downloads MP3 files systematically, automatically naming them with cleaned titles and injecting robust metadata sidecar files (_metadata.txt) for each song.
  • Crash Resilient: Ledger-based processing means you can stop the download phase anytime. Rerunning the script will seamlessly pick up exactly where it left off.

Prerequisites

  1. Google Chrome installed.
  2. Python 3.10+ installed.

Setup

  1. Install the Python dependencies:
    pip install -r requirements.txt
  2. Install the Playwright chromium binaries (required for the underlying automation engine):
    playwright install chromium

Usage

Step 1: Start Chrome in Debug Mode

Close all instances of Google Chrome. Open a terminal and launch Chrome with the remote debugging port active:

"C:\Program Files\Google\Chrome\Application\chrome.exe" --remote-debugging-port=9222 --user-data-dir="C:\ChromeDebug"

Step 2: Login to Suno

In the newly opened Chrome window, navigate to Suno.com, log into your account, and open your "Library" page.

Step 3: Run the Harvester

You can run the harvester with three different modes depending on what you need to do:

  • Harvest Metadata Only (Builds the ledger by capturing network traffic while scrolling):
    python suno_harvester.py --harvest
  • Download Assets Only (Reads the ledger and downloads the physical MP3s to your drive):
    python suno_harvester.py --download
  • Do Both Sequentially:
    python suno_harvester.py --all

Configuration

You can easily modify output paths at the top of the suno_harvester.py file:

BASE_DIR = Path(r"E:\newsuno")
DOWNLOAD_DIR = BASE_DIR / "Audio"

Disclaimer

This script was built as a personal archive tool. Please ensure you are complying with the platform's Terms of Service when archiving massive amounts of audio, and respect standard API rate limits.

License

This project is released under the R.U.L.E.S. (Regulatory User License and Enforced Standards). See LICENSE for full terms.

About

An autonomous, CDP-driven extraction framework designed to bypass UI limitations and systematically harvest, index, and archive Suno AI libraries at scale.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages