YouTube – How to Find Channel RSS Feed

rssyoutube

YouTube officially supports channel RSS feeds, but I'm facing severe difficulties in finding the feed. Using the channel URL isn't possible at least in Thunderbird. Firefox appears to be currently unable to detect the feed (used to work in the past, but somewhat unreliably and refreshing the page was occasionally necessary) and Google Chrome has no native RSS support to my knowledge.

There's a method to manually create a feed, but it may no longer work (channel-external-id appears not to exist in the source of all channels, there's channel_id instead):

  1. View the page’s source code
  2. Look for the following text: channel-external-id
  3. Get the value for that element
  4. Replace that value into this URL:

https://www.youtube.com/feeds/videos.xml?channel_id=UCBcRF18a7Qf58cCRy5xuWwQ

example channel: https://www.youtube.com/user/SesameStreet/videos

Best Answer

Actually what you suggested, is exactly the RSS feed address, although it was changed a bit from the procedure described in your question, there correct string to search is externalId.

With script

The following script will extract the feed URL and will output it to the console:

for (var arrScripts = document.getElementsByTagName('script'), i = 0; i < arrScripts.length; i++) {
    if (arrScripts[i].textContent.indexOf('externalId') != -1) {
        var channelId = arrScripts[i].textContent.match(/\"externalId\"\s*\:\s*\"(.*?)\"/)[1];
        var channelRss = 'https://www.youtube.com/feeds/videos.xml?channel_id=' + channelId;
        var channelTitle = document.title.match(/\(?\d*\)?\s?(.*?)\s\-\sYouTube/)[1];
        console.log('The rss feed of the channel \'' + channelTitle + '\' is:\n' + channelRss);
        break;
    }
}

Result:

The rss feed of the channel 'Sesame Street' is:
https://www.youtube.com/feeds/videos.xml?channel_id=UCoookXUzPciGrEZEXmh4Jjg

Where to save it

  1. You can use it as a user-script (with Greasemonkey or Tampermonkey for example).
  2. You can use it as a Bookmarklet.
  3. Copy the code and paste it into the developer console.

Note: If you choose options 1 or 2 - it would be more convenient to replace the console.log command with alert to get a popup instead of a message to the console.


Manually

  1. Open the desired YouTube channel page.
  2. Open the view-source of that page (one of the following):
    • Ctrl+U.
    • Right click --> View page source.
    • Add view-source: to the beginning of the url in the address bar.
  3. Search for the term externalId
  4. Right after it, there will be a random code (the channel id) in the form of: UCoookXUzPciGrEZEXmh4Jjg
  5. Add the code you found as a suffix to https://www.youtube.com/feeds/videos.xml?channel_id= and now that's your RSS feed for that channel.