从youtube ID获取流派

Bla*_*ber 0 python youtube

def get_data(key, region, *ids):
    url = "https://www.googleapis.com/youtube/v3/videos?part=snippet&id={ids}&key={api_key}"
    r = requests.get(url.format(ids=",".join(ids), api_key=key))
    js = r.json()
    items = js["items"]
    cat_js = requests.get("https://www.googleapis.com/youtube/v3/videoCategories?part=snippet&regionCode={}&key={}".format(region,
    key)).json()
    categories = {d['id']: d["snippet"]['title'] for d in cat_js["items"]}
    for item in items:
        yield item["snippet"]["title"], categories[item["snippet"]["categoryId"]]  
Run Code Online (Sandbox Code Playgroud)

我有上面的功能来获取youtube类别和视频名称.有没有办法获得音乐视频的类型,如流行,摇滚,众议院等?请帮忙!

小智 5

我不知道这种类型是否被标记 - 可能不是.

如果没有,我会建议两种选择.

容易一个:

  • 获取的音乐流派列表(这里的例子,但你可以根据你的任务定义你的)
  • 每次获得标题时,请分隔艺术家姓名和音乐名称
  • 使用艺术家姓名查询维基百科,并检查是否引用了某些音乐流派.
  • 如果存在,请使用歌词名称查询维基百科,以检查是否引用了类型.

PS:如果需要,您可以引用其他网站(例如更准确).作为另一个开源数据库,请查看http://musicbrainz.org/,它为每位艺术家提供标签.你必须自动查询这些页面 - 维基百科很容易,因此是第一个命题(检查).

艰难的一个:

  • 获得一系列标有其流派的音乐培训
  • 提取音频功能
  • 训练具有先前功能的分类器
  • 分类任何新的音乐感谢这个分类(例如,对于一个给定的音乐,一个概率各流派关联 - 和定义thresold(S),以保持其中的一些)
  • 如果做得好,可以被主要的音乐公司聘用 - 有些人尝试过不太好的结果