Skip to main content

A YouTube RSS Video Downloader

Project description

yt-rss-dl

YouTube RSS Video Downloader

This Python script allows you to download videos from YouTube channels using their RSS feeds. The script organizes the downloaded videos by channel name and year, and names each video using the format [Upload date] - 'Name' - [Video ID].

Features

  • Automatic Download: Fetches and downloads videos from specified YouTube channels via their RSS feeds.
  • Organized Storage: Videos are sorted into directories based on channel name and upload year.
  • Avoid Duplicate Downloads: Tracks downloaded videos in a downloaded.dat file to prevent re-downloading the same video.
  • Customizable Naming Convention: Each video is named according to the format [Upload date] - 'Name' - [Video ID].

Prerequisites

  • Python 3.6+
  • yt-dlp installed (pip install yt-dlp)
  • feedparser

Installation

  1. Clone the repository:
    git clone https://github.com/yourusername/yt-rss-dl.git
    cd yt-rss-dl```
    
  2. Install the required dependencies: pip install -r requirements.txt

Setup

  1. Add Channel IDs: Create a channel_ids.txt file in the root directory. Add the YouTube channel IDs, each on a new line. For example:
UCCWLtpQNoq7gbiHqssF4rPg
UC_x5XG1OV2P6uZZ5FSM9Ttw
  1. Run the Script:
python yt-rss-dl.py

How It Works

  1. The script reads the YouTube channel IDs from channel_ids.txt.
  2. It fetches the latest videos for each channel using their RSS feed.
  3. The script checks if a video has already been downloaded (tracked in downloaded.dat).
  4. If not downloaded, the video is downloaded using yt-dlp, saved in a directory structure organized by channel name and year.
  5. The script renames the video according to the format [Upload date] - 'Name' - [Video ID].

Example Output Structure

downloaded_videos/
└── Channel Name [Channel ID]/
    ├── 2023/
    │   ├── 2023-05-12 - Example Video 1 - [dQw4w9WgXcQ].mp4
    │   └── 2023-06-15 - Example Video 2 - [yPYZpwSpKmA].mp4
    └── 2024/
        └── 2024-07-11 - Example Video 3 - [zZZ5FSM9Ttw].mp4

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

yt-rss-dl-0.0.2.tar.gz (3.9 kB view details)

Uploaded Source

Built Distribution

yt_rss_dl-0.0.2-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

Details for the file yt-rss-dl-0.0.2.tar.gz.

File metadata

  • Download URL: yt-rss-dl-0.0.2.tar.gz
  • Upload date:
  • Size: 3.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.3

File hashes

Hashes for yt-rss-dl-0.0.2.tar.gz
Algorithm Hash digest
SHA256 e57dc368b97dd0126d0ec5de6f67e3b2cbd0dfbfbe3c5acf7b2ffe40d9b71e13
MD5 972f9f8c7db883160e7496a84eaa98d3
BLAKE2b-256 dbc0cd484a10dae3c6252bd7663496d50471925d43e74b30bd9c8fe8e41c5174

See more details on using hashes here.

File details

Details for the file yt_rss_dl-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: yt_rss_dl-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 4.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.3

File hashes

Hashes for yt_rss_dl-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 565106b41ef02e349b96ab99524adec45e9649b04eb38ee15d84b567206184c8
MD5 d7db0eb3b132929ab11f0accdef7f2ab
BLAKE2b-256 ae4af5796b1088fe2f2517a7fc1fccde67bbf3cff2a9aafd2861152b65718bfb

See more details on using hashes here.

Supported by

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