在youtube api的v2中,我可以通过获取频道的用户信息(https://gdata.youtube.com/feeds/api/users/userId)并查看位置属性来获取频道的国家/地区。似乎它在 API 的 v3 中不存在。
由于我只对特定国家/地区的频道感兴趣,有没有办法知道频道在哪个国家/地区?
唯一的解决方法是使用 guideCategories。
您可以按区域列出指南类别。
然后在频道>列表呼叫中,您可以插入该类别 ID。
regionCode
参数不会按照您的想法:)
它只是发回在该国家/地区可用的视频,而不是在该国家/地区发布的视频。
看来 API 的 V2 终于被关闭了。
有没有人设法想出解决方法,因为 API 的 V3 不支持它?
我已经通读了 API 文档,虽然似乎确实有可用于此数据的字段 (snippet.country),但它似乎并未填充在绝大多数频道中。
我需要的是找到与频道/视频关联的一般地区(国家)。没有什么比这更细粒度的了。
如果你想知道它所在的频道的国家信息,可以通过频道列表API获取,使用以下代码,如果频道的国家/地区在其ABOUT部分中提到,你可以得到一个频道的国家。 id = 'Enter_your_channel_id_here'
url = 'https://www.googleapis.com/youtube/v3/channels?part=snippet,statistics&id=' + str(id)
channel_url = url + '&key=' + str(key)
raw_json = requests.get(channel_url).text
dataa = json.loads(raw_json)
channel_country = dataa['items'][0]['snippet']['country']
此代码将返回特定频道的国家/地区代码,通过进行一些Google研究,您可以轻松获取国家/地区代码的国家/地区名称。谢谢!
正如这个答案所建议的那样,做一个Search: list
并按区域代码过滤。