看起来没有正式的YouTube API来查找YouTube网络列表或哪些频道属于特定网络。有任何想法如何找到这些信息?
如果没有直接方法,socialblade.com使用什么算法获得近似列表?
答案 0 :(得分:10)
我不知道这是不是像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'];
您拥有与该频道相关联的网络。
答案 1 :(得分:3)
目前看起来您不能使用v3 API获取此信息,但我相信什么是socialblade正在调用 networks 是内容所有者或“合作伙伴名称”。
在API响应中,如果条目包含yt:type属性为partner的
<media:credit>
标记,则Feed条目包含合作伙伴视频。<media:credit role='uploader' scheme='urn:youtube' yt:display='partner_name' yt:type='partner'>
{PARTNER_NAME {1}}
此处描述:https://developers.google.com/youtube/2.0/reference#Video_Feeds
(或者就像任何视频一样。)
编辑:由于这显然不准确,我会指出分析API似乎确实有这些信息,但从描述中听起来它只允许在频道上报告您自己的“网络”。话虽这么说,SocialBlade必须从某处获取有关其他网络的信息:
参与YouTube合作伙伴计划的内容所有者还可以使用该API检索汇总所有与其内容所有者帐户关联的YouTube频道的Google Analytics数据的报告。