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
Tiny python video cutter

tiny_python_video_cutter Source code based on a discussion in StackOverflow Setup project in Pycharm: Configure virtual env in Pycharm. You are done w

Truong 2 May 28, 2022
Ffmpeg videostream - High speed video frame access in Python, using FFmpeg and FFshow

FFmpeg VideoStream High speed video frame access in Python, using FFmpeg and FFshow This script requires: Karl Kroening's 'ffmpeg-python' library. (ht

3 Sep 29, 2022
Repository to create Ascii art in CMD based on video file.

Made to take any file format, and transform it into ascii art, displayed as a video in the cmd. If the cmd formatting is wrong, try zooming a little and remember to make cmd fullscreen. I made my cmd

60 Dec 17, 2022
A VcVideoPlayer Bot for Telegram made with 💞 By @ThePro_CoderZ

VcVideoPlayer A VcVideoPlayer Bot for Telegram made with 💞 By @Akki_ThePro Heroku Deploy The easiest way to deploy this Bot is via Heroku. License

1 Dec 06, 2021
Become a virtual character with just your webcam!

Become a virtual character with just your webcam!

Rich 300 Jan 03, 2023
Python application that can be used to generate video thumbnail for mp4 and mkv file types.

Thumbnail Generator 🎬 What is This This is a Python application that can be used to generate video thumbnail for mp4 and mkv file types. Installation

Tharindu N. 13 Jan 03, 2023
This program is to make a video based on Deep Dream

This program is to make a video based on Deep Dream. The program is modified from DeepDreamAnim and DeepDreamVideo with additional functions for bleding two frames based on the optical flows. It also

Aertist 23 Jan 22, 2022
Add the dislike count back to my YouTube videos via a comment containing that information.

YouTube Dislikes Forrest Knight Python Version 3.0+ Only use if you know what the code actually does. I'm not responsible for your use of this code in

Forrest Knight 155 Dec 19, 2022
Webcam Indicator is an application to recieve and send messages from your own Webcam Server.

Welcome to Webcam Indicator 👋 Webcam Indicator is an application to recieve and send messages from your own Webcam Server. 🏠 Homepage Prerequisites

Lorenzo Carbonell 2 Apr 04, 2022
MPV remote controller is a program for remote controlling mpv player with device in your local network through web browser.

MPV remote controller is a program for remote controlling mpv player with device in your local network through web browser.

5 May 26, 2022
Program to play videos with props in Apex Legends

R5Fresh A video player for the Apex Legends mod R5Reloaded

9 Nov 13, 2022
Search a video semantically with AI.

Which Frame? Search a video semantically with AI. For example, try a natural language search query like "a person with sunglasses". You can also searc

David Chuan-En Lin 1 Nov 06, 2021
Rune - a video miniplayer made with Python.

Rune - a video miniplayer made with Python.

1 Dec 13, 2021
Python based script to operate FFMPEG.

FMPConvert Python based script to operate FFMPEG. Ver 1.0 -- 2022.02.08 Feature ✅ Maximum compatibility: Third-party dependency libraries unused ✅ Che

cybern000b 1 Feb 28, 2022
A GUI application for cropping images from videos

v-trimming-gui A GUI application for cropping images from videos. 動画をシークバーで操作しながらスクリーンショットを撮るためのアプリ。 Requirement Python =3.7 opencv-python ^4.5.5 PyS

Menrui 6 Feb 05, 2022
Text2Video's purpose is to help people create videos quickly and easily by simply typing out the video’s script and a description of images to include in the video.

Text2Video Text2Video's purpose is to help people create videos quickly and easily by simply typing out the video’s script and a description of images

Josh Chen 19 Nov 22, 2022
Automatic video generator for local news

Automatic video generator for local news

Gabriel Monteiro 2 Jan 11, 2022
Streamlink is a CLI utility which pipes video streams from various services into a video player

Streamlink is a CLI utility which pipes video streams from various services into a video player

8.2k Dec 26, 2022
Python program - to extract slides from videos

Programa em Python - que fiz em algumas horas e que provavelmente tem bugs - para extrair slides de vídeos.

Natanael Antonioli 45 Nov 12, 2022
This plugin generates json files used by deovr allowing you to play 2d and 3d video's using the player

deovr-plugin This plugin generates json files used by deovr allowing you to play 2d and 3d video's using the player. Deovr looks for an index file /de

10 Sep 29, 2022