Skip to content

jordon31/OnlySnap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

123 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Yoooo 3 years

OnlySnap β€” the easiest OnlyFans & Patreon downloader out there. No cap.

Full TUI (Terminal User Interface). No more sweating over cmd commands or typing manual inputs. You can literally CLICK on stuff now.

Other tools require a PhD in coding to run; this one is built different. EZ. No complex garbage, just click and download.


πŸš€ HOW TO START

Requirements

  • Python 3.10+ required
  • pip (comes with Python)

Windows

  1. Double-click !RUN.bat

Linux / macOS

macOS β€” FIRST TIME SETUP (required):

Before running run.sh, remove the macOS quarantine flag or the system will block the scripts:

xattr -r -d com.apple.quarantine /Users/$(whoami)/Downloads/OnlySnap-main

⚠️ Replace OnlySnap-main with your actual folder name if you renamed it.

Then:

chmod +x run.sh
./run.sh

Same menu, same options. Works on Ubuntu, Fedora, Arch, macOS (Intel + Apple Silicon).

πŸ“Ί Video tutorial: YouTube


πŸŽ›οΈ THE LAUNCHER

Windows (!RUN.bat)

Option What it does
1) Run OnlySnap Opens the main TUI hub
2) Install Requirements pip install -r Site\requirements.txt β€” installs all dependencies
3) Install DRM Tools Downloads FFmpeg, MP4Decrypt, N_m3u8DL-RE into dmr/ folder
4) Add to PATH Creates onlyfans, patreon, onlysnap commands usable from any folder

Linux / macOS (run.sh)

Same 4 options. DRM tools are installed via:

  • macOS: Homebrew (auto-installs Brew if missing) + GitHub releases
  • Linux: apt/dnf/pacman/apk for FFmpeg + binary downloads for the rest

🍎 macOS β€” KNOWN ISSUE (IMPORTANT)

On macOS, auto cookie scraping does NOT work for OnlyFans and Patreon.

Why? macOS ships with LibreSSL instead of OpenSSL. This creates a different TLS fingerprint that Cloudflare (which protects both sites) identifies as a bot. When Playwright opens the browser or the script makes API calls, Cloudflare invalidates your session immediately β€” logging you out.

The fix: On macOS, the app automatically uses clipboard mode instead of Playwright. You copy headers from DevTools and paste them. It's a few extra seconds but your cookies stay alive.

ℹ️ This issue does NOT affect Windows or Linux β€” auto-scrape works normally on those platforms.

OnlyFans β€” Manual Cookie Setup (macOS)

  1. Open https://onlyfans.com/my/chats/ in your browser
  2. Press Cmd+Option+I to open DevTools β†’ go to the Network tab
  3. Refresh the page (Cmd+R)
  4. Find the request: onlyfans.com/api2/v2/chats?limit=10&...
  5. Click it β†’ select the Headers tab
  6. Select ALL the headers text and copy (Cmd+C)
  7. Run the script β€” it will prompt you to press ENTER after copying

Patreon β€” Manual Cookie Setup (macOS)

  1. Open https://www.patreon.com/messages/?mode=user&tab=chats in your browser
  2. Press Cmd+Option+I to open DevTools β†’ go to the Network tab
  3. Refresh the page (Cmd+R)
  4. Find the request: patreon.com/_next/data/.../messages.json?mode=user&tab=chats
  5. Click it β†’ select the Headers tab
  6. Select ALL the headers text and copy (Cmd+C)
  7. Run the script β€” it will prompt you to press ENTER after copying

πŸ”‘ AUTO COOKIE SCRAPE (DO THIS FIRST!)

No more manual copy-paste of cookies. The app auto-scrapes your browser session directly.

⚠️ macOS users: Auto-scrape is disabled on macOS due to Cloudflare TLS detection. See the macOS section above for the manual clipboard method.

How it works

  1. Open OnlySnap β†’ Select OnlyFans or Patreon
  2. The cookie scraper launches your actual browser (with your logged-in profile)
  3. It opens the site, grabs cookies automatically, and saves them to Auth.json
  4. Done. No DevTools, no manual JSON editing.

Supported Browsers (auto-detected)

Browser Windows macOS Linux
Chrome βœ… βœ… βœ…
Brave βœ… βœ… βœ…
Edge βœ… βœ… βœ…
Opera βœ… βœ… β€”
Opera GX βœ… β€” β€”
Firefox βœ… βœ… βœ…
Vivaldi βœ… βœ… βœ…
Safari β€” ❌ (not supported by Playwright) β€”

⚠️ Important: The browser must be fully closed before running the cookie scrape. The scraper opens your real profile β€” it can't share the lock with an already-open browser.

Headless / Server Mode (Linux without GUI)

If you're on a Linux server with no desktop, the auto-scrape detects it automatically and switches to clipboard mode β€” same process as macOS (see manual cookie setup above).

Manual Clipboard Mode (Fallback)

If auto-scrape doesn't work on any platform, use Option [2] Clipboard in the cookie manager. The process is the same as the macOS cookie setup β€” copy headers from DevTools and the script reads them from your clipboard.

You can also run the cookie scripts directly:

python Site/cookie-onlyfans.py   # OnlyFans cookie manager
python Site/cookie-patreon.py    # Patreon cookie manager

πŸ›€οΈ PATH COMMANDS (Option 4)

Run Option 4 in the launcher to register global commands:

onlyfans    β†’ Launches OnlyFans scraper from anywhere
patreon     β†’ Launches Patreon scraper from anywhere
onlysnap    β†’ Launches the main hub from anywhere

How it works

  • Windows: Creates wrapper .bat files in %USERPROFILE%\.onlysnap\bin\ and adds it to your PATH
  • Linux/macOS: Creates wrapper scripts in ~/.onlysnap/bin/ and adds it to your ~/.bashrc / ~/.zshrc / fish config

If you move the folder

Just re-run Option 4. It rewrites the wrapper scripts with the new paths. Works across drives too.

πŸ’‘ Open a new terminal after running Option 4 for the first time β€” the PATH update won't apply to the current session.


--- Example Registrazione


βš™οΈ SETTINGS (STOP EDITING JSON FILES)

You don't need to touch Config.json like a caveman anymore.

Inside the app, there is a [SETTINGS] button. Click it. BIG NEWS: Everything you change is AUTO-SAVED IN REAL-TIME. No "Save" button, no "I forgot to click apply". You type, it saves. Period.

Setting Translation for Dummies
Custom Filename Add your branding (es. @MyChannel). Leave empty for original IDs.
Watermark Text Type your text. It adds a sleek, dynamic watermark on every photo.
Month Names true = "January", false = Numbers. Aesthetic choice.
No Year Folders If true, it dumps everything in one place. Chaotic evil.
Skip Highlights Covers Saves space. Who looks at covers anyway?
Disable Text Files true = Only Media. false = Includes a .txt with the post caption.
Download Tagged Downloads SPAM/ADS (#ad). Keep it false unless you love commercials.
Workers (Threads) Speed. Default is 5. High values = Fast, but don't fry your CPU.

⚠️ ATTENTION: FILENAME LOGIC

Read this or don't complain later. The script checks if a file exists by its Name.

  • If you set a Custom Filename Prefix (e.g., MyStore_12345.jpg), the script saves it like that.
  • If you later DELETE the prefix or change it, the script will look for 12345.jpg, won't find it, and WILL DOWNLOAD EVERYTHING AGAIN.

❀️ PATREON: SPAM LIKE (Bonus Feature)

Auto-like all posts from a creator on Patreon.

Setup

The SPAM LIKE button only appears if you have a valid CSRF token in your Auth.json:

  1. Open Patreon in your browser β†’ F12 β†’ Network tab
  2. Click the ❀️ like button on any post
  3. Find the POST request to /api/posts/.../likes
  4. In Request Headers, copy the value of x-csrf-signature
  5. Paste it in Site/Configs/Patreon/Auth.json:
{
    "user-agent": "...",
    "cookie": "...",
    "x-csrf-signature": "paste_your_token_here"
}
  1. Restart Patreon β†’ The SPAM LIKE button appears

How it works

  • Fetches all posts from the selected creator
  • Skips locked posts (higher tier) and already-liked posts
  • Likes at ~150 posts/min with built-in delay between requests
  • If Patreon rate-limits you (429), the script stops immediately

πŸ“Έ SMART WATERMARK

We added a high-end Auto-Marker for photos.

  • Dynamic Sizing: It detects the photo resolution and adapts the text size so it's never too big or too small.
  • Elegant Design: White text, subtle shadow, and a semi-transparent dark background in the bottom-left corner.
  • How to use: Just put your text in Settings. If you want a specific vibe, drop your favorite .ttf font into the main folder.

πŸ”„ AUTO UPDATE CHECK

Both OnlyFans.py and Patreon.py automatically check for updates on startup by comparing your local version with the latest on GitHub. If a new version is available, you'll see a notification in the TUI.


πŸ“ PROJECT STRUCTURE

OnlySnap-main/
β”œβ”€β”€ OnlySnap.py          # Main TUI hub
β”œβ”€β”€ !RUN.bat             # Windows launcher
β”œβ”€β”€ run.sh               # Linux/macOS launcher
β”œβ”€β”€ Site/
β”‚   β”œβ”€β”€ OnlyFans.py      # OnlyFans downloader TUI
β”‚   β”œβ”€β”€ Patreon.py        # Patreon downloader TUI
β”‚   β”œβ”€β”€ cookie-onlyfans.py  # Auto cookie scraper (OnlyFans)
β”‚   β”œβ”€β”€ cookie-patreon.py   # Auto cookie scraper (Patreon)
β”‚   β”œβ”€β”€ requirements.txt    # Python dependencies
β”‚   β”œβ”€β”€ Configs/
β”‚   β”‚   β”œβ”€β”€ OnlyFans/
β”‚   β”‚   β”‚   β”œβ”€β”€ Auth.json    # Cookies & headers
β”‚   β”‚   β”‚   └── Config.json  # Download settings
β”‚   β”‚   └── Patreon/
β”‚   β”‚       β”œβ”€β”€ Auth.json    # Cookies, headers & CSRF token
β”‚   β”‚       └── Config.json  # Download settings
β”‚   └── dmr/               # DRM tools (FFmpeg, mp4decrypt, N_m3u8DL-RE)
└── downloads/             # Your downloaded content

πŸ”§ EXTRAS

  • Telegram: https://t.me/OnlySnap0
  • Credits: Me. I built this while you were sleeping.
  • Bugs: It works on my machine. (any problem / suggestion open issues)
  • Disclaimer: For educational purposes only (wink wink).

OnlyFans Scrape - Scrape OnlyFans - Patreon Scrape - Scrape Patreon

About

Scrape OnlyFans #onlyfans -- #of-scr -- #onlyfans scrape -- #onlyfans-dl -- OnlyFans content downloader -- #of scrap -- #onlysnap - OnlyFans Scrape - Patreon #patreon - patreon scrape - scrape patreon - patreon downloader

Topics

Resources

Stars

130 stars

Watchers

6 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors