Skip to content

PanagopoulosNikolaos/TubeHarvester

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TubeHarvester

A Python application for downloading YouTube videos, audio, playlists, and channels.

Features

  • Download individual YouTube videos
  • Convert videos to MP3 or MP4 formats
  • Batch download multiple videos
  • Scrape and download entire YouTube playlists
  • Scrape and download all videos from a YouTube channel
  • Handle YouTube authentication with automatic cookie extraction from browsers
  • Simple graphical user interface (GUI)

Project Structure

TubeHarvester/
├── LICENSE
├── main.py
├── README.md
├── requirements.txt
├── run_tests.py
├── src
│   ├── BatchDownloader.py
│   ├── ChannelScraper.py
│   ├── CookieManager.py
│   ├── GUI.py
│   ├── __init__.py
│   ├── Mp3_Converter.py
│   ├── Mp4_Converter.py
│   ├── PlaylistScraper.py
└── tests
    ├── __init__.py
    ├── test_batch_downloader.py
    ├── test_batch_mp3_downloading.py
    ├── test_channel_scraper.py
    ├── test_cookie_manager.py
    ├── test_gui.py
    ├── test_mp3_converter.py
    ├── test_mp4_converter.py
    ├── test_playlist_scraper.py
    ├── test_playlist_url_handling.py
    └── test_youtube_mix_playlists.py

Installation

Prerequisites

  • Python 3.x
  • FFmpeg

Install FFmpeg

sudo apt install ffmpeg  # Debian/Ubuntu

Setup Python Environment

pip install -r requirements.txt

Or with conda:

conda activate base_env
pip install -r requirements.txt

Run the Application

python3 main.py

Or with conda:

conda activate base_env && python main.py

Usage

The GUI will launch, allowing to enter YouTube URLs and select download options.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

GUI application for downloading YouTube videos, playlists, and channels in MP3 or MP4 formats.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages