如本文档中所述:"使用Freebase主题搜索"以及可用视频中所述,当使用topicDetails
作为part
的参数时,YouTube Data API v3提供了某些Freebase MID。
我的问题是,考虑到Freebase API目前不可用(将来会关闭),我如何使用这些返回的主题来获取与该主题相关的所有视频(视频中也提供了一个示例)?
例如,对于/m/0410tth
,Google知识图在向发出请求时不会返回任何内容
GET https://kgsearch.googleapis.com/v1/entities:search?ids=%2Fm%2F0410tth
对于Wikidata,我仍然没有找到一种简单的方法来使用他们的数据。
我知道并不是所有来自Freebase的信息都包含在GK图中,我也知道有一个文件用于Freebase的MIDs
和Wikidata的QIDs
之间的映射,但它们现在似乎对我没有帮助。
我应该如何使用YouTube为我提供的topicIDs
,以及目前如何将它们与其他YouTube视频关联起来?
这个问题不是关于如何使用Freebase MID进行维基数据搜索,而是关于谷歌对如何使用API提供的relevantTopicIds
的官方回应,因为文档中没有提供任何关于这方面的见解
我不确定你的实际问题是什么,但目前的情况是:Freebase不推荐使用,但YouTube Data API v3仍然引用它,视频的topicDetails
部分以Freebase标识符的形式返回相关主题。虽然我知道自从Freebase被关闭以来,没有一致的方法来标记这些视频,但你仍然可以使用它们来仅根据标识符查找相关的YouTube视频。例如:
GET https://www.googleapis.com/youtube/v3/videos?part=id%2Csnippet%2CtopicDetails&id=hBoCRYX6Vq0&key={YOUR_API_KEY}
哪个返回:
"topicDetails": {
"topicIds": [
"/m/0qsc46_",
"/m/0gs0nr"
],
"relevantTopicIds": [
"/m/03hdbf",
"/m/03cz_9n",
"/m/0403l3g",
"/m/025zzc",
"/m/06zm8z",
"/m/0bzvm2",
"/m/0403l3g",
"/m/025zzc",
"/m/06zm8z"
]
}
(...)
我碰巧知道/m/0qsc46_
是《巫师3》游戏的主题ID,我想要其他关于它的视频,所以我只使用YouTube搜索方法:
GET https://www.googleapis.com/youtube/v3/search?part=id%2Csnippet&topicId=%2Fm%2F0qsc46_&type=video&key={YOUR_API_KEY}
不幸的是,AFAIK无法构建结合多个主题的查询。
我预计在几个月内,一些Freebase主题ID的替代品将出现在年初至今的API中。