I built a Python Video Downloader for my Engineering Thesis 🎓🎥

Hello Devs! 👋

We’ve all been there. You need to download a video for offline viewing or archiving. You search on Google, click on the first result, and…

🚨 Popups everywhere.
🚨 “Allow notifications to continue.”
🚨 Sketchy redirects.

I recently face…


This content originally appeared on DEV Community and was authored by oheyek

Hello Devs! 👋

We've all been there. You need to download a video for offline viewing or archiving. You search on Google, click on the first result, and...

🚨 Popups everywhere.
🚨 "Allow notifications to continue."
🚨 Sketchy redirects.

I recently faced a challenge: I needed to create a practical application for my Engineering Thesis (Bachelor's final project). I didn't want to build something that would just sit in a drawer. I wanted to solve a real annoyance.

So, I combined my academic requirements with a practical solution and built VidGrabber – an open-source tool written in Python to grab videos easily.

🚀 What is VidGrabber?

VidGrabber is a desktop utility that allows you to download videos from popular platforms. It was designed as a diploma project to demonstrate Python capabilities in handling media streams and GUI applications.

No ads, no tracking, just code.

GitHub logo oheyek / VidGrabber

Desktop application for downloading and processing YouTube content

VidGrabber Logo VidGrabber

Python Version License Platform Release Downloads

A powerful desktop application for downloading and processing YouTube content with an intuitive interface.

VidGrabber Interface

✨ Features

  • Multi-Format Downloads: Download videos (MP4), audio (MP3/WAV), thumbnails (JPG), and tags (CSV).
  • Quality Selection: Choose from available video qualities (144p to 2160p) with automatic detection.
  • Queue Management: Add multiple downloads to queue and process them in batch (up to 5 concurrent downloads).
  • Smart Path Management: Customize download locations for each file type with persistent settings.
  • Theme Customization: Switch between Dark, Light, and System themes.
  • Tag Extraction: Extract video tags and copy them directly to clipboard.
  • Cross-Platform: Works seamlessly on Windows, macOS, and Linux.
  • Auto-Updates: Automatically downloads and updates yt-dlp and ffmpeg binaries.
  • Progress Tracking: Real-time download progress with visual indicators.

🛠️ Installation

Using the Pre-built Release

  1. Download the appropriate executable for your platform from the Releases page
    • Windows: VidGrabber.exe
    • macOS: VidGrabber-macOS.zip
    • Linux: VidGrabber-Linux.tar.gz
  2. Extract…

🛠️ Tech Stack

Since this was an engineering project, I focused on clean structure and efficiency:

  • Language: Python 3.x 🐍
  • Core: yt-dlp (for robust video extraction)
  • GUI: customtkinter (for a modern look) / tkinter

✨ Key Features

  • User-Friendly Interface: Designed to be intuitive (a key requirement for my thesis).
  • High Quality: Downloads the best available resolution.
  • Audio Extraction: Option to grab just the audio (MP3).
  • Open Source: Fully transparent code.

💻 How to run it

If you want to test my thesis project, you can clone the repo and run it locally.

  1. Clone the repository:

    git clone https://github.com/oheyek/VidGrabber.git
    cd VidGrabber
    
  2. Install dependencies:

    pip install -r requirements.txt
    
  3. Run the app:

    python main.py
    

🤝 Contributions

Even though the thesis is the main milestone, I'd love to keep this project alive! If you have ideas for improvements, feel free to:

  1. Fork the repository.
  2. Create a feature branch.
  3. Submit a Pull Request!

🔗 Links

If you find this tool useful or just want to support a student/developer, please consider starring the repo ⭐ on GitHub. It really helps!

Thanks for reading! Happy coding! 💻


This content originally appeared on DEV Community and was authored by oheyek


Print Share Comment Cite Upload Translate Updates
APA

oheyek | Sciencx (2025-11-27T11:11:22+00:00) I built a Python Video Downloader for my Engineering Thesis 🎓🎥. Retrieved from https://www.scien.cx/2025/11/27/i-built-a-python-video-downloader-for-my-engineering-thesis-%f0%9f%8e%93%f0%9f%8e%a5/

MLA
" » I built a Python Video Downloader for my Engineering Thesis 🎓🎥." oheyek | Sciencx - Thursday November 27, 2025, https://www.scien.cx/2025/11/27/i-built-a-python-video-downloader-for-my-engineering-thesis-%f0%9f%8e%93%f0%9f%8e%a5/
HARVARD
oheyek | Sciencx Thursday November 27, 2025 » I built a Python Video Downloader for my Engineering Thesis 🎓🎥., viewed ,<https://www.scien.cx/2025/11/27/i-built-a-python-video-downloader-for-my-engineering-thesis-%f0%9f%8e%93%f0%9f%8e%a5/>
VANCOUVER
oheyek | Sciencx - » I built a Python Video Downloader for my Engineering Thesis 🎓🎥. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2025/11/27/i-built-a-python-video-downloader-for-my-engineering-thesis-%f0%9f%8e%93%f0%9f%8e%a5/
CHICAGO
" » I built a Python Video Downloader for my Engineering Thesis 🎓🎥." oheyek | Sciencx - Accessed . https://www.scien.cx/2025/11/27/i-built-a-python-video-downloader-for-my-engineering-thesis-%f0%9f%8e%93%f0%9f%8e%a5/
IEEE
" » I built a Python Video Downloader for my Engineering Thesis 🎓🎥." oheyek | Sciencx [Online]. Available: https://www.scien.cx/2025/11/27/i-built-a-python-video-downloader-for-my-engineering-thesis-%f0%9f%8e%93%f0%9f%8e%a5/. [Accessed: ]
rf:citation
» I built a Python Video Downloader for my Engineering Thesis 🎓🎥 | oheyek | Sciencx | https://www.scien.cx/2025/11/27/i-built-a-python-video-downloader-for-my-engineering-thesis-%f0%9f%8e%93%f0%9f%8e%a5/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.