Skip to main content

A command-line tool to download videos from various social media platforms like YouTube, TikTok, Facebook, Instagram and X. It supports instagram batch downloads, format selection, and maintains a download history.

Project description

Social Media Downloader

A powerful and easy-to-use tool to download public videos from your favorite social media platforms. Whether you're on Windows or Linux, technical or not — we've got you covered. Download in batches, choose your formats, and even use it as a command-line tool or standalone app. Built with love, open-source, and fully community-driven. 100% Free (but hey, a coffee wouldn’t hurt!)

[!NOTE] This tool only supports public links. It does not work on private or restricted content. If you try to use it on private content, it will throw an error. Please respect the privacy of others.

Workflow Status Python Version Version Total Downloads License

Supported Social Media Platforms

  • YouTube
  • TikTok
  • Instagram
  • Facebook
  • X (Twitter)
  • Twitch
  • Snapchat
  • Reddit
  • Vimeo
  • Streamable
  • Pinterest (New)
  • LinkedIn (New)
  • BiliBili (New)
  • Other platforms (Not yet)
  • Private content (Not yet)
  • Playlist support (Not yet)

Features

  • Multiple Platforms – YouTube, Instagram & more
  • Batch Downloads – Download multiple links at once ( only public links Instagram)
  • Choose Formats – MP4, MP3, or whatever you vibe with
  • History Log – Keeps track of what you downloaded
  • Update Checker – Always stay fresh with the latest version
  • Interactive CLI – Easy to use, even for non-techies

Preview

Preview

Usage

Clone this repo (Recommended)

git clone https://github.com/nayandas69/Social-Media-Downloader.git

Then navigate to the directory:

cd Social-Media-Downloader

Create a virtual environment (optional but recommended)

Windows

python -m venv .venv            # (Recommended)
.venv\Scripts\activate
pip install -r requirements.txt
python downloader.py

Linux

python3 -m venv .venv            # (Recommended)
source .venv/bin/activate
pip3 install -r requirements.txt
python3 downloader.py

🧩 Requirements

Install FFmpeg

sudo apt update
sudo apt install ffmpeg

Installation Options

🔌 Install via PIP (Python Users)

pip install social-media-downloader

Then just run from anywhere:

social-media-downloader

If you want to update to the latest version, run:

pip install --upgrade social-media-downloader

Install via .deb package

[!NOTE] This is only for Debian-based systems (like Ubuntu). If you are using other Linux distros, please use the prebuilt binaries or build from source.

  1. Download the .deb file from Releases
  2. Open a terminal and navigate to the directory where you downloaded the file.
  3. Run the following command:
sudo dpkg -i social-media-downloader_VERSION_amd64.deb
  1. If you get any dependency errors, run:
sudo apt-get install -f
  1. After installation, you can run the tool by typing smd in the terminal.
  2. To uninstall, run:
sudo apt-get remove social-media-downloader

Prebuilt Binaries & EXE

[!WARNING] Use them at your own risk. These are prebuilt binaries and EXE files. For EXE/Binaries don't forget to install FFmpeg. Always use the latest version from the Releases page. If you have any issues, please open an issue on GitHub. Prebuilt binaries & exe don't require Python or any dependencies. Just download and run! Note: These builds are not signed, so you may get a warning from Windows Defender or your antivirus. This is normal for unsigned builds. You can safely ignore it and run the EXE. If you are not sure about the build, please build it from source using the Instructions above. We are not responsible for any issues caused by using untrusted builds. DO NOT use modified EXE/Binaries files outside this repository. For your security, only use trusted builds. If you get a warning, click "More Info" and then "Run Anyway".

🪟 Windows EXE (Prebuilt)

  1. Download the EXE from Releases
  2. Double-click & run like a normal app

🐧 Prebuilt Linux Binaries

Download the smd-linux.tar.gz from Releases and:

tar -xvzf smd-linux.tar.gz
sudo chmod +x smd
./smd

🌐 Visit Our SMD Web Portal

Check out the official page: nayandas69.github.io/Social-Media-Downloader

How to Use

  1. Run the tool (either via command line or double-click the EXE)
  2. Select the platform you want to download from (YouTube, Instagram, etc.)
  3. Paste the public link of a video
  4. Choose output format ID available like 625 (or type mp3 for audio-only)
  5. Sit back and let the tool work its magic!
  6. Wait for the download to finish (it’ll show you the progress)
  7. Batch download? No problem! Just follow these steps:
    • Create a .txt file with each URL on a new line
    • For batch download, enter the path to your .txt file containing URLs.
    • For example: C:\path\to\batch_links.txt or /home/user/batch_links.txt
  8. Find your downloaded files in the same directory as the tool
  9. Enjoy your videos!

Tested Platforms

  • Windows 11
  • Windows 10
  • Kali Linux
  • Parrot OS
  • macOS (Not tested)
  • Other Linux Distros (Should work but not tested)

Legal & Ethical Use

[!WARNING] READ THIS BEFORE USING! This tool is for PERSONAL USE ONLY and only works with public videos. You CANNOT use it to:

  • Download private, copyrighted, or restricted content
  • Repost videos without credit (be a decent human, c’mon)
  • Violate YouTube, Instagram, Facebook, TikTok or other social media TOS I'm not responsible if you break the rules. Use this ethically and responsibly!

Read More:

Planned & Current Features

Completed

  • CLI Interface
  • MP4 / MP3 support
  • Batch mode
  • Update checker
  • Linux/Windows support
  • PyPI packaging
  • Basic EXE & binary build
  • Facebook, Instagram, YouTube, TikTok, X
  • Snapchat, Reddit, Vimeo, Streamable & Pinterest
  • LinkedIn & BiliBili

In Progress / Planned

  • GUI Interface
  • Web Interface
  • macOS support
  • Proxy support
  • Other platforms

Contributing & Support

Have suggestions? We'd love to hear them! Open an issue on GitHub or join our Discord community. Your feedback is invaluable in making this tool even better!

Love the tool? Help improve it! Open an issue or PR on GitHub.

Contact Me:

Thank You, 4.7K+ Users!

This project is maintained by nayandas69.
Thanks for downloading & supporting! Share your reviews and feedback.
Y’all are the real MVPs!

Disclaimer:
This tool is not affiliated with or endorsed by YouTube, TikTok, Instagram, Facebook, X, or other social media. Use at your own discretion.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

social_media_downloader-1.1.2.tar.gz (15.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

social_media_downloader-1.1.2-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file social_media_downloader-1.1.2.tar.gz.

File metadata

  • Download URL: social_media_downloader-1.1.2.tar.gz
  • Upload date:
  • Size: 15.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for social_media_downloader-1.1.2.tar.gz
Algorithm Hash digest
SHA256 2aaad8278847b7aea5be3362cfcd2b571d1e71e59f19d18c7c0868ea14a0b762
MD5 1b0d1ef4ca762fe27553a79573dbe0d3
BLAKE2b-256 2c047cc84edae5df64fd4cc6fcd05f85e360a65480c09bdcf7bd00866af9572a

See more details on using hashes here.

Provenance

The following attestation bundles were made for social_media_downloader-1.1.2.tar.gz:

Publisher: python-package.yml on nayandas69/Social-Media-Downloader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file social_media_downloader-1.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for social_media_downloader-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 07c62fc06e9bc29520686d8100f055f2352eddabec133e870bfd1d0066b52597
MD5 c8455bd26867d998f43fb6e233fa4877
BLAKE2b-256 45bf0d0a08130479aa5c23f33580043390670a719c5d35b4c858e55971fcb9aa

See more details on using hashes here.

Provenance

The following attestation bundles were made for social_media_downloader-1.1.2-py3-none-any.whl:

Publisher: python-package.yml on nayandas69/Social-Media-Downloader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page