This is a simple script to generate a .opml file from a list of youtube channels.

Related tags

Videoyoutube-to-rss
Overview

Youtube to rss

Don't spend more time than you need to on youtube.com

This is a simple script to generate a .opml file from a list of youtube channels.

Since the subscriptions tab and the little bell that you need to click to actually get notifications on new uploads seem to work whenever youtube feels like it (and since email notifications no longer exist) I wanted to get an rss feed from the channels I wanted to actually follow.

Youtube used to have a button to do this but now I can't seem to find a way to follow a channel via RSS.

How to get an rss feed for a youtube channel

To get a channels RSS feed:

  1. Go to the channel you want to follow
  2. Find the channel ID
  • If the url looks like this: https://www.youtube.com/channel/UCYO_jab_esuFRV4b17AJtAw then the ID is the random string after channell (ie UCYO_jab_esuFRV4b17AJtAw)
  • If the url has a username like this https://www.youtube.com/user/USERNAME you can find their ID by
    • Viewing the page source (Ctrl+U)
    • Search the page (Ctrl+F) for external_id or channel_id or simply youtube/channel/ and copy the string that follows.
  1. Point to the channel with this url: https://www.youtube.com/feeds/videos.xml?channel_id=THE_CHANNEL_ID_HERE

The above is a valid RSS feed you can add to the reader of your choice. You can also follow by user via this link https://www.youtube.com/feeds/videos.xml?user=USERNAME and by playlist https://www.youtube.com/feeds/videos.xml?playlist_id=YOUR_YOUTUBE_PLAYLIST_NUMBER though there may be a querry limit that breaks this, I haven't tested it myself.

How to get a list of your subscriptions

There also used to be a button to extract your subsciptions to RSS but it is no longer there. The only ways I found to get a list of subscribed channels are:

  1. Crawl this here link subscription list (which is a pain to find as well) and extract the channel links.
  2. Do the above by hand
  3. Request for an API key and use the developer console to possibly get access.
  4. Ask for google for your data here. You only need to check the "Youtube and Youtube Music" box. Check in the zip file after downloading for subscriptions.csv (or similar in case something changes)

Sadly the easiest and least complicated option is number 4. This script will work with any csv that contains channel IDs and names but by default assumes the google takeout format. The choice is given anyway.

How to use this script

  1. Download the script to a directory you have permissions to write to. (eg Desktop or Downloads should work)
  2. Run the script by running the command python3 youtube-to-rss.py in your terminal. You need to have python3 installed.
  3. Point the script to a .csv file with the youtube channels you want to track via RSS by following the instrucitons.
  4. Import the resulting .opml file to the RSS reader of your choice.

What does it do ?

This script is mostly user interaction fluff. Basically it looks for a .csv file with a collumn of channel IDs and another of channel names. It then creates the rss links as described above and finally formats them as a basic opml/xml file to import them in a reader. By default it places each channel in its own folder. If this is not the desired behaviour there is a function called add_channel_nofolder commmented out in the code. To use that one and have all the channels in a single folder comment out the add_channel function, uncommnent the add_channel_nofolder and rename it to add_channel. (I may add this as a choice in user dialog in the future)

Plaintext links just in case

subscription list - https://www.youtube.com/feed/channels

google takeout - https://takeout.google.com/

google developer console - https://console.developers.google.com/

python installation guide - https://realpython.com/installing-python/

Owner
Kostas
Kostas
Lightweight, zero-dependency proxy and storage RTSP server

python-rtsp-server Python-rtsp-server is a lightweight, zero-dependency proxy and storage server for several IP-cameras and multiple clients. Features

Vlad 39 Nov 23, 2022
Simple nightcore song+video maker

nighty nighty is a simple nightcore song maker (+ video) Installation clone the repo wherever you want git clone https://www.github.com/DanyB0/nighty

DanyB0 2 Oct 02, 2022
Examples of usage of GStreamer hlssink3 plugin.

Examples of usage of GStreamer hlssink3 plugin.

Rafael Carício 2 Aug 03, 2022
A Telegram bot to convert videos into x265/x264 format via ffmpeg.

Video Encoder Bot A Telegram bot to convert videos into x265/x264 format via ffmpeg. Configuration Add values in environment variables or add them in

Adnan Ahmad 82 Jan 03, 2023
A script to disable steam servers regionwise. [Works on Windows only]

Csgo-server-blocker A script to disable steam servers regionwise. [Works on Windows only] Dependencies python3.x Usage: pip install requirements.txt I

Aditya Bennur 2 Jun 10, 2022
Cvplayer - A simple video player written in python using ffpyplayer and OpenCV

Video Player cvplayer is a minimal wrapper around the ffpyplayer.MediaPlayer cla

ADI 7 Dec 19, 2022
I have baked a custom integration to control Eufy Security Cameras and access RTSP and P2P stream if possible.

I have baked a custom integration to control Eufy Security Cameras and access RTSP (real time streaming protocol) and P2P (peer to peer) stream if pos

Fuat Akgün 422 Jan 01, 2023
Telegram Video Stream

Video Stream An Advanced VC Video Player created for playing video in the voice chats of Telegram Groups And Channel Configs TOKEN - Get bot token fro

mr_lokaman 46 Dec 25, 2022
A GUI based datamoshing apllication for everyone! Apply this glitch to your videos and gifs. Supports all video formats!

A GUI based datamoshing apllication for everyone! Apply this glitch to your videos and gifs. Supports all video formats!

Akascape 131 Dec 31, 2022
TkVideoplayer - This is a simple library to play video files in tkinter.

TkVideoplayer - This is a simple library to play video files in tkinter.

Art/Paul 38 Dec 23, 2022
Filtering user-generated video content(SberZvukTechDays)Filtering user-generated video content(SberZvukTechDays)

Filtering user-generated video content(SberZvukTechDays) Table of contents General info Team members Technologies Setup Result General info This is a

Roman 6 Apr 06, 2022
Automatically logs into VTOP and can perform certain tasks

VTOP_Login Automatically logs into VTOP and can perform certain tasks To run the

Jatin 1 Jan 30, 2022
Stream music with ffmpeg and python

youtube-stream Stream music with ffmpeg and python original Usage set the KEY in stream.sh run server.py run stream.sh (You can use Git bash or WSL in

Giyoung Ryu 14 Nov 17, 2021
Automatic video generator for local news

Automatic video generator for local news

Gabriel Monteiro 2 Jan 11, 2022
pyYotubemanager is full web automated bot capable of General tasks like:- Uploading a Video , Downloading , adding Title , Description , Listing types , adding Thumbnail

PyYoutubemanager Explore the docs » View Demo · Report Bug · Request Feature About The Project PyYotubemanager is full web automated bot capable of Ge

4 Jun 29, 2022
A simple Python Youtube Wachtime for YTbebot

Simple bot that was development in python 3.7, that automatically watch youtube videos. It can be used to give more views in your channel helping in the spread and increase the followers because your

Rian eka wiratma 1 Dec 05, 2021
A web RTSP play platform based on websocket and tornado, websocket use blob binaryType read as ArrayBuffer

A web RTSP play platform based on websocket and tornado, websocket use blob binaryType read as ArrayBuffer

2 Feb 25, 2022
Add a "flame" effect on each hand's index onto a video stream.

Add a "flame" effect on each hand's index onto a video stream. recording.webm.mov This script is just a quick hack, it's a bit of glue between mediapi

Paul Willot 7 Sep 15, 2022
plumi video sharing

December 2017 update We are moving tickets from the Plumi tracker (trac.plumi.org) here, for historical reasons. Plumi video sharing system Plumi is a

Plumi 111 Dec 15, 2022
A Telegram bot to convert videos into x265/x264 format via ffmpeg.

Video Encoder Bot A Telegram bot to convert videos into x265/x264 format via ffmpeg. Configuration Add values in environment variables or add them in

1 Mar 08, 2022