看起来没有官方的 YouTube API 来查找 YouTube 网络列表或哪些频道是给定网络的一部分。任何想法如何找到该信息?
如果没有直接的方法,socialblade.com 使用什么算法获取近似列表?
看起来没有官方的 YouTube API 来查找 YouTube 网络列表或哪些频道是给定网络的一部分。任何想法如何找到该信息?
如果没有直接的方法,socialblade.com 使用什么算法获取近似列表?
我不知道这是否是诸如 socialblade 或 channelmeter 之类的网站获取网络频道的方式。但我就是这样做的。
假设我访问此视频链接:http ://www.youtube.com/watch?v=_8AZT40gH5E
在联网频道的元标记信息中,有一个属性<meta name=attribution content=JamieOliver/>
(例如),它实际上指定了该频道所属的网络。所以我所做的是来自我正在使用的频道的一个视频,并使用这样的小功能:
$tags = get_meta_tags("http://www.youtube.com/watch?v=_8AZT40gH5E");
echo $network = $tags['attribution'];
并且您拥有与频道关联的网络。
目前您似乎无法使用 v3 API 获取此信息,但我相信 socialblade 所称的网络是内容所有者或“合作伙伴名称”。
<media:credit>
在 API 响应中,如果提要条目包含yt:type 属性值为合作伙伴 的标签,则该条目包含合作伙伴视频。<media:credit role='uploader' scheme='urn:youtube' yt:display='partner_name' yt:type='partner'>
合作伙伴名称</media:credit>
此处描述:https ://developers.google.com/youtube/2.0/reference#Video_Feeds
这可能只是将仅包含不同合作伙伴的视频的频道分配给该合作伙伴的“网络”的问题。(或者就像任何视频一样。)
编辑:由于这显然看起来不准确,我会指出分析 API 似乎确实有这些信息,但从描述来看,它似乎只允许报告您自己的“网络”频道。话虽如此,SocialBlade 必须从某个地方获取有关其他网络的信息:
参与 YouTube 合作伙伴计划的内容所有者还可以使用 API 来检索报告,这些报告汇总了与其内容所有者帐户相关联的所有 YouTube 频道的分析数据。