THE GREAT KORNHOLIO PRESENTS (with minor adjustments to keep it alive by mangoarctic21)
This tool downloads all photos/videos from an OnlyFans profile, creating a local archive. You must be subscribed to the profile to download their content.
onlyfans-dl will create a directory called profiles
in the repo directory.
Each profile you download will be stored as a subdirectory of profiles
.
Inside each profile directory, some information will be saved in info.json
,
and all media will be downloaded to photos/
and videos/
.
DON'T OPEN AN ISSUE ABOUT THE REQUESTS LIBRARY. ( #8 #25 #28 #29 #33 #44 #45 #104 #125 )
LOOK: python -m pip install requests
If you have installed requests and it still doesn't work, then this is an issue with your local environment, not onlyfans-dl.
First, make sure to set your session variables in auth.json
.
./onlyfans-dl.py
Requests to the API now need to be signed. This is an obfuscation technique from the developers to discourage scraping. Thanks for the most recent patch goes to DIGITALCRIMINAL.
You need your browser's user-agent, onlyfans session cookie, x-bc HTTP header, and user-id HTTP header. Here's how to get them:
- Get your user-agent here: ipchicken
- Session Cookie
- Login to OnlyFans as normal
- Open the dev console Storage Inspector (
SHIFT+F9
on FireFox). or the Application tab of Chrome DevTools - Click Cookies -> https://onlyfans.com
- Copy the value of the
sess
cookie
- x-bc and user-id
- Login to OnlyFans
- Open dev console
F12
-> Network tab (Ctrl+Shift+E
in FireFox) - Go to the home page
- In dev tools, click Headers sub-tab (default)
- Click on one of the JSON elements (may need to refresh page) and look under request headers on the right. The
hints
request is a good request to look at, as not all requests have both headers.
There are variables for each of these values at the top of the script. Make sure to update them every time you login or your browser updates.
PRs are welcome; be sure to take some time to familiarize yourself with OnlyFans' API if you would like to extend/modify the functionality of this script.