📖 About
I originally wrote this project because the downloaders I tried weren't consistently downloading the highest-quality media available.
Fansly-DL retrieves a creator's timeline and chats, downloading the highest quality media your account is authorized to access.
It does not bypass subscriptions or paid content—your account must already have permission to view the media.
✨ Features
- 📷 Downloads the highest available image quality
- 🎥 Downloads videos
- 📁 Organises downloads by year/month
- 📅 Preserves upload dates in filenames
- 📊 Progress bars with download statistics
- 🔄 Resume partially downloaded files
- 🧹 Simple command-line interface
📑 Table of Contents
📦 Requirements
- Python 3.11+
- A Fansly account
- An active subscription to the creator whose content you want to download
🚀 Installation
Download using pip:
pip install Fansly-DL
🛠 Usage
1. Obtain your session token
Log into Fansly using your browser.
Open Developer Tools → Console and run:
localStorage.getItem("session_active_session")
Example:
{
"id": "...",
"accountId": "...",
"token": "YOUR_TOKEN"
}
Copy the value of token.
2. Run the downloader
fansly-dl --session-token YOUR_TOKEN
⚙ Arguments
Required
| Argument | Description |
|---|---|
--session-token TOKEN |
Session token obtained from localStorage.getItem("session_active_session") |
Optional
| Argument | Description |
|---|---|
--destination PATH |
Download directory (default: ./Downloads) |
--debug |
Enable debug logging |
--concurrent |
Amount of simultaneous downloads (default: 5) |
--timeout |
Requests timeout in seconds (default: 10) |
--chunk-size |
Amount of chunks to download in a request stream. (default: 1024 * 1024) |
--my-messages |
Downloads messages you sent in chats. (default: False) |
--no-chats |
Skips downloading media from chats. (default: False) |
📂 Example Output
Downloads/
└── Creator/
├── 2026/
│ ├── 07 - July/
│ │ ├── [2026-07-29] d600a1e88eff.jpeg
│ │ ├── [2026-07-29] 50db93fc1110.mp4
│ │ └── ...
⚠ Limitations
- You must have permission to access the creator's content.
❓ FAQ
Can I download paid content?
Only if your account has already purchased or subscribed to it.
Does this bypass subscriptions?
No.
🐞 Issues
Found a bug?
Please open an issue:
https://github.com/Mogrul/Fansly-DL/issues
Feature requests and pull requests are welcome.
⚖ Disclaimer
This project is provided for educational purposes.
The author is not responsible for how this software is used, including any account restrictions or other consequences that may result from its use. Users are responsible for ensuring they comply with Fansly's Terms of Service and all applicable laws.
Made with ☕, Python and way too much reverse engineering.
⭐ If this project helped you, consider starring the repository.
Metadata
Release files for Fansly-DL 0.2.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| fansly_dl-0.2.2.tar.gz | 367.5 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fansly_dl-0.2.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 381.2 kB
Release files / fansly_dl-0.2.2.tar.gz
| Download URL | fansly_dl-0.2.2.tar.gz |
|---|---|
| Size | 367.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c28ff9ae294e920afb3b30b5311fc6b17eae6b17079fb192fb6cbddbdb2970b4
|
|
BLAKE2b-256 checksum How to use checksums |
a3fa47a8ffd63a7f8df35ec59ccaa29bccc0edbce5296d55a21fec5e5c7a1cfd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.5
|
Release files / fansly_dl-0.2.2-py3-none-any.whl
| Download URL | fansly_dl-0.2.2-py3-none-any.whl |
|---|---|
| Size | 13.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9ab5b403356bd7dca2c6d1dc45c2fdaa29a60fe5a0010bbd0df780fd17923b1b
|
|
BLAKE2b-256 checksum How to use checksums |
7b665eb3da59de1c2b0c90abc7fc6d1e88113a72873f604b5cab9ddeeec8f3c3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.5
|
Security for Fansly-DL 0.2.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.