如何从youtube获取过去24小时内访问量最大的视频的RSS源? 我想使用php
列出我网站首页上访问量最大的24小时视频我已经检查了this,但没有找到用于此目的的RSS Feed生成器。
This网站列出了过去24小时内访问次数最多的视频,但我不知道它会使用哪种API或RSS Feed!
提前感谢您的帮助
答案 0 :(得分:0)
此文档Standard feeds for channels还讨论了如何检索列出观看次数最多或订阅最多的YouTube频道的标准Feed。要检索标准渠道供稿,请向与该供稿相关联的网址发送GET请求。
您还可以查看viewCount
属性,该属性提供观看视频的次数。
"statistics": {
"viewCount": unsigned long,
"likeCount": unsigned long,
"dislikeCount": unsigned long,
"favoriteCount": unsigned long,
"commentCount": unsigned long
},
您可以查看这些相关的SO主题:
是的,他们在某一天没有统计数据,但确实有 运行viewCount。因此,您可以使用
中的API信息https://developers.google.com/youtube/v3/docs/search/list
制作类似
的内容https://www.googleapis.com/youtube/v3/search?part=snippet&order=viewCount&publishedAfter=2014-10-29T00%3A00%3A00Z&publishedBefore=2014-10-31T00%3A00%3A00Z&key={YOUR_API_KEY}
答案 1 :(得分:0)
像这样我做到了... public void GetFeedList(int UserId, string channel) { var doc = XDocument.Load("https://www.youtube.com/feeds/videos.xml?" + channel); XNamespace xmlns = "http://www.w3.org/2005/Atom"; XNamespace media = "http://search.yahoo.com/mrss/"; XNamespace community = "http://search.yahoo.com/mrss/community";
var query =
from entry in doc.Root.Elements(xmlns + "entry")
let grp = entry.Element(media + "group")
let com = grp.Element(media + "community")
select new YouTubeFeedItem
{
User_Id = UserId,
User_Channel = channel,
Title = (string)grp.Element(media + "title"),
Description = (string)grp.Element(media + "description"),
Video = (string)grp.Element(media + "content").Attribute("url"),
Image = grp.Elements(media + "thumbnail")
.Select(e => (string)e.Attribute("url"))
.First(),
Views = com.Elements(media + "statistics")
//.Select(e => (string)com.Element("statistics"))
.Select(e => (string)e.Attribute("views"))
.First(),
Count = com.Elements(media + "starRating")
.Select(e => (string)e.Attribute("count"))
.First(),
Average = com.Elements(media + "starRating")
.Select(e => (string)e.Attribute("average"))
.First(),
Min = com.Elements(media + "starRating")
.Select(e => (string)e.Attribute("min"))
.First(),
Max = com.Elements(media + "starRating")
.Select(e => (string)e.Attribute("max"))
.First(),
};
List<YouTubeFeedItem> youTubeFeed = query.ToList();
干杯, 乔