大约一个月前,YouTube决定删除其网站前端的"标签":http://youtubecreator.blogspot.com/2012/08/tags-removed-from-video-watch-pages.html
这也反过来使媒体:关键字在任何API提要请求中为空,如下所示:http://apiblog.youtube.com/2012/08/video-tags-just-for-uploaders.html
好的是,再过一个月左右(直到几天前),你仍然可以通过API访问视频的"标签"或"关键字",方法是循环浏览类别术语(s)
YouTube似乎也取消了这一点,现在它只为每个API提要显示一个类别术语。。。大多数时候,它们是YouTube上的基本类别,如"音乐"或"人物"等。
我向YouTube开发团队提出的问题是,为什么这是从API上拿走的(我理解是从网站前端拿走的),它会以任何形式返回API吗?
在最初的创建者博客文章中,你们说:
">标记仍然是组织和帮助他人查找视频的重要方式。我们强烈鼓励您继续标记视频,这将通过提高内容的可发现性来帮助增加受众。">
因此,如果标签仍然很重要,并且仍然用于搜索结果。。。为什么它们在世界上不能再通过API获得?
任何帮助和/或信息都将不胜感激,因为这已经完全破坏了我的许多网站的功能!非常感谢。
看来他们已经将它们设为私有,您现在必须使用具有足够通道权限的授权API请求才能访问它们。这真的很糟糕,因为我用它们从网站上的频道过滤视频,并通过PHP授权连接到API,这对我来说很复杂,无法正常工作。事实上,这种增加的复杂性只适用于关键字似乎有点荒谬,但我猜Youtube API团队不在乎。
除非有很多人对此抱怨,否则我怀疑他们是否会把这件事作为公众来补充。
我刚刚添加了
更新:此更改也适用于<类别scheme="http://gdata.youtube.com/schemas/2007/keywords.cat">标签,原公告中未提及。
到公告博客文章<类别>标签应该由于相同的原因而被移除<媒体:关键字>被删除,但由于疏忽,它们被留在未经验证的API回复中数周。没有计划通过任一元数据字段添加回关键字信息。
如果您的目标是在视频中具有一些语义,Freebase Topics可以提供帮助。例如,您可以执行JSONp调用
<script src="https://www.googleapis.com/freebase/v1/topic${item}?filter=/type/object/name&callback=putFBname"></script>
带有一个小javascript函数
<script>
function putFBname(respuesta){
span=document.getElementById(respuesta["id"]);
span.innerHTML=" "+respuesta["property"]["/type/object/name"]["values"][0]["text"];
}
</script>
以获取主题的名称。
Freebase主题出现在API v3中。