如何以编程方式找出哪些频道是给定 YouTube 网络的一部分?

Posted

技术标签:

【中文标题】如何以编程方式找出哪些频道是给定 YouTube 网络的一部分?【英文标题】:How to programmatically find out what channels are part of a given YouTube network? 【发布时间】:2012-09-16 04:59:41 【问题描述】:

似乎没有官方的 YouTube API 来查找 YouTube 网络列表或特定网络中的频道。任何想法如何找到该信息?

如果没有直接的方法,socialblade.com 使用什么算法来获取近似列表?

【问题讨论】:

你不是想获取视频所属的频道吧?像这样的东西? ***.com/questions/12856445/… 【参考方案1】:

我不知道这是否是诸如 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'];

并且您拥有与频道关联的网络。

【讨论】:

没问题,很高兴能帮上忙!【参考方案2】:

目前您似乎无法使用 v3 API 获取此信息,但我相信 socialblade 所称的 networks 是内容所有者或“合作伙伴名称”。

在 API 响应中,如果 Feed 条目包含 &lt;media:credit&gt; 标记且 yt:type 属性的值为合作伙伴,则该条目包含合作伙伴视频。 <media:credit role='uploader' scheme='urn:youtube' yt:display='partner_name' yt:type='partner'>partner_name&lt;/media:credit&gt;

此处描述:https://developers.google.com/youtube/2.0/reference#Video_Feeds

可能只是将包含不同合作伙伴的视频的频道分配给该合作伙伴的“网络”。 (或者可能任何个视频。)

编辑:由于这显然不准确,我会指出分析 API 似乎确实有该信息,但从描述中听起来它只允许报告您自己的“网络”频道。话虽如此,SocialBlade 必须从某处获取他们关于其他网络的信息:

参与 YouTube 合作伙伴计划的内容所有者还可以使用 API 来检索报告,这些报告汇总了与其内容所有者帐户相关联的所有 YouTube 频道的分析数据。

【讨论】:

嗯.. 我不认为它是这样工作的。如果您从“SocialBlade”网络获取“itsjerryandharry”频道并获取其视频:curl "https://gdata.youtube.com/feeds/api/videos?v=2&amp;author=itsjerryandharry&amp;prettyprint=true&amp;uploader=partner" 每个视频都将包含类似&lt;media:credit role='uploader' scheme='urn:youtube' yt:display='ItsJerryAndHarry' yt:type='partner'&gt;itsjerryandharry&lt;/media:credit&gt; 的内容。没有提到 SocialBlade 之类的。 好吧,SocialBlade 显然是 YouTube 合作伙伴。另一种选择是他们使用的是content owner reports,这对公众不可用。如果公共 API 确实包含该信息,他们似乎很可能会削弱它。不过,最好获得“可靠或官方消息来源”的确认。 @MilovanZogovic 这样的频道不会引用网络名称“Socialblade”,而是引用 CMS 合作伙伴标题(在本例中为“Maker Studios”)

以上是关于如何以编程方式找出哪些频道是给定 YouTube 网络的一部分?的主要内容,如果未能解决你的问题,请参考以下文章

Java - 订阅 Youtube 频道

如何找出 YouTube 上的确切关注者数量?

如何从 YouTube 频道 ID 获取用户的 Google+ ID

从 youtube 频道获取视频列表

如何启动 Youtube 应用程序以打开频道?

如何在 Android TV 上以编程方式更改电视频道