How to get a Youtube channel RSS feed after 2015 April 20 (without v3 API)?

后端 未结 16 1119
野趣味
野趣味 2020-12-22 17:14

Now that API v2 is gone, what would be a way to get a simple RSS feed of a channel, without v3 API? I\'m open to Yahoo Pipes or any workaround that is simpler than creating

相关标签:
16条回答
  • 2020-12-22 17:43

    Easiest way to get the channel id:

    Open Subscription Manager (left panel, down below subscriptions) and click on the desired user.

    The url will be in the form: https://www.youtube.com/channel/XXXXXXXXXXXXXXXXX

    So the feed url should be:

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

    Note: Better use channel ids rather than user names because user names may change.

    0 讨论(0)
  • 2020-12-22 17:45

    I used the below code to integrate Youtube Feed with wordpress custom field "ACF plugin" & FancyBox

        <?php  
        $channel_id = get_field('youtube_chanel_id'); //ACF text field
        if ($channel_id){ // if channel_id not empty -- START
        $youtube = file_get_contents('https://www.youtube.com/feeds/videos.xml?channel_id='.$channel_id);
        $xml = simplexml_load_string($youtube, "SimpleXMLElement", LIBXML_NOCDATA);
        $json = json_encode($xml);
        $youtube = json_decode($json, true);
            echo'<div class="col-md-12 youtube-videos-feed">';  
            foreach ($youtube['entry'] as $k => $v) {
                $id = str_replace(array("yt:video:"), "", $v['id']); // Remove "yt:video:" from ID value
                //$date = $v['updated']; // video updated date (disabled for now)
                $title = $v['title']; // video title
                echo '<a class="with-video" href="https://www.youtube.com/watch?v=',$id,'&autoplay=1&rel=0&controls=0&showinfo=0&modestbranding=0" data-fancybox="videos"  data-caption="',$title,'" title="',$title,'" >
                    <div class="col-md-3 main-image post-image img-fancy">
                        <img src="https://img.youtube.com/vi/',$id,'/0.jpg" alt="',$title,'" >
                    </div>
                </a>';
            }
            echo'</div>';
        } // if channel_id not empty -- END
     ?>
    
    0 讨论(0)
  • 2020-12-22 17:46

    At RSS Reader section https://support.google.com/youtube/answer/6098135?hl=en there is an option to export to an OPML file your subscriptions. Then, looking at the contents of the OPML you can extract the feeds, and the structure of each feed is:

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

    So you could generate new feeds from this structure if you know the channel id. This kind of feeds are not getting the "https://youtube.com/devicesupport" error, so I expect they are going to keep working.

    0 讨论(0)
  • 2020-12-22 17:48

    I have created an example Yahoo Pipes here.
    http://pipes.yahoo.com/pipes/pipe.info?_id=6eeff0110a81f2ab94e8472620770b11

    You can run this pipe by pressing "Run Pipe" without API Key filled. But you must provide your own API Key and channel id (which can be obtained via channels API) when cloned. Wanted to automate fetching channelId by YouTube username but not easy to pipe.

    0 讨论(0)
  • 2020-12-22 17:48

    I found a Chrome extension named Youtube RSS-ify that injects an RSS icon on video, channel and navigation pages. It was just what I was looking for.

    Icons look like this:

    0 讨论(0)
  • 2020-12-22 17:51

    try using this URL: https://www.youtube.com/feeds/videos.xml?user=USERNAME

    Works fine for me.

    0 讨论(0)
提交回复
热议问题