A command-line tool to download videos from various social media platforms like YouTube, TikTok, Facebook, Instagram, X & more. It supports instagram batch downloads, format selection, and maintains a download history.
Project description
Social Media Downloader
A fast, simple, and open-source tool to grab public videos from all your favorite platforms — including YouTube, TikTok, Instagram, Facebook, X and see all supported platforms. Whether you're a techie or a casual user, this tool works seamlessly across Windows and Linux. Download single videos or entire batches, pick your desired format, and save content hassle-free. With a user-friendly command-line interface, you can easily download videos in just a few clicks.
[!NOTE] This tool only works with publicly available videos. It cannot download private, restricted, or protected content. Attempting to do so will result in an error.
Please use responsibly and respect content ownership and privacy.
Intro
Quick Start
Clone the Repository
git clone https://github.com/nayandas69/Social-Media-Downloader.git
cd Social-Media-Downloader
Requirements
✅ Before running the tool, make sure FFmpeg is installed:
Install FFmpeg
-
Windows: Download from ffmpeg.org and add bin folder to your System PATH.
-
Linux:
sudo apt update
sudo apt install ffmpeg
Install the Tool
Click to expand the installation options for Social Media Downloader
Installation Options
| Platform | Method | Instructions |
|---|---|---|
| Windows | Standalone .exe |
Download from Releases, double-click to run |
| Linux | Binary / .deb |
Use the .deb installer or download the binary for direct execution |
| Universal | pip (recommended) |
pip install social-media-downloader |
| Manual | From Source | Clone repo → install deps → python smd/downloader.py |
[!TIP] Choose the method that works best for your setup. Full guide: Installation Guide
📚 Full Documentation
Our complete user guide is available online:
Docs: https://nayandas69.github.io/Social-Media-Downloader
Highlights:
- Requirements & Setup
- Using the Downloader
- Supported Platforms
- Common Issues
- Build & Troubleshooting
- Feature Roadmap
Features
- Multi-platform support: YouTube, TikTok, Instagram, etc.
- Batch downloads: Just paste multiple links in a .txt file
- Format options: Choose between MP4, MP3, or ID-based formats
- Download history tracking
- Update checker built-in
- Interactive CLI: Beginner-friendly and simple to use
- Works on both Windows and Linux
How It Works
-
Launch the tool (EXE or Python script)
-
Choose a platform (YouTube, Instagram, etc.)
-
Paste a public video URL
-
Select a format (e.g.,
mp3,625) -
The tool handles the rest! You'll see real-time progress.
-
For batch downloads:
- Create a
.txtfile with one URL per line - Provide the file path when prompted
- Create a
Your videos will be saved in the same folder where the tool is located.
Tested Environments
| OS | Status |
|---|---|
| Windows 11/10 | ✅ Tested |
| Kali Linux / Parrot OS | ✅ Tested |
| macOS | ⚠️ Not tested |
| Other Linux | ⚠️ Should work |
Legal & Usage Notice
🚫 This tool is provided for educational and personal use only. You must not:
- Use it to download private, copyrighted, or restricted content
- Violate any Terms of Service of the platforms supported
- Re-upload or redistribute videos without proper permission or credit
❗ The developer is not responsible for how this tool is used. Please respect digital ownership and platform policies.
Contributing
Have suggestions, bug reports, or ideas? We welcome contributions! 👉 Open an issue or submit a PR
Read the Contribution Guide
Credits & Community
Made with ❤️ by Nayan Das
Email: nayanchandradas@hotmail.com
Join us on Discord
🙌 Special thanks to all contributors
Thank You — 7K+ Users and Growing!
If this tool helped you, show some love by ⭐ starring the repo or Support! Your support keeps this project alive ❤️
This project is not affiliated with or endorsed by YouTube, TikTok, Instagram, Facebook, X or other platforms.
Full yt-dlp Support + Easy CLI Integration
This tool uses yt-dlp under the hood, so it supports all sites yt-dlp supports — not just the ones listed below.
Click here to view the full list of sites supported by yt-dlp
But we’ve gone a step further!
In downloader.py, we’ve added CLI program support for the most commonly used social media platforms (like YouTube, TikTok, Reddit, X, etc.) via an internal allowed_domains list.
This makes it easier for users to:
- Paste a URL from a popular site
- Automatically validate it
- Download videos or extract audio seamlessly
✅ All without needing to memorize complex flags or command-line options!
You can even expand support by editing the allowed_domains list inside the script. This makes it super customizable for your own needs.
Built With
This tool wouldn't be possible without these amazing open-source projects:
Huge thanks to their developers and contributors for making this tool possible!
License
This project is licensed under the MIT License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file
social_media_downloader-1.1.9.tar.gz.File metadata
File hashes
673eaf62ce592b0f7dc504d4ebc1b590d0c93130b4c22260b12630c0eb123320f90bb9401b4e5bfd1a5f82a404236d31e1ea2a98188c0280ea0e272729439843ad9c5105f245dcf1cfdebadb5df73648See more details on using hashes here.
Provenance
The following attestation bundles were made for
social_media_downloader-1.1.9.tar.gz:Publisher:
Attestations: Values shown here reflect the state when the release was signed and may no longer be current.python-package.ymlon nayandas69/Social-Media-Downloader-
Statement type:
-
Predicate type:
-
Subject name:
-
Subject digest:
-
Sigstore transparency entry: 242564458
- Sigstore integration time:
Source repository:https://in-toto.io/Statement/v1https://docs.pypi.org/attestations/publish/v1social_media_downloader-1.1.9.tar.gz673eaf62ce592b0f7dc504d4ebc1b590d0c93130b4c22260b12630c0eb123320-
Permalink:
-
Branch / Tag:
-
Owner: https://github.com/nayandas69
-
Access:
Publication detail:nayandas69/Social-Media-Downloader@e61acd13b499e13d76988ae8d57607fbd1aa6f18refs/heads/mainpublichttps://token.actions.githubusercontent.comgithub-hostedpython-package.yml@e61acd13b499e13d76988ae8d57607fbd1aa6f18push