本文适用于希望编写YouTube交互程序的开发者,可以快速地了解Youtube Data API接口使用方法。 Youtube具有海量的视频,如何根据需要快速地检索到想要的视频十分重要。通过查阅资料发现,google已经提供了Youtube开发者网站,主页为: https://developers.google.com/youtube/v3。开发者网站对外提供web访问接口,称为Youtube Data API。根据官方介绍,由API的使用者可以归纳为两类:
1、Uploader
视频上传者可以通过API上传视频,管理播放列表和订阅,更新频道设置等。
2、Watcher&Searcher
视频观看者可以使用API完成基于关键词,主题,位置,发布日期等的视频检索功能,此外还支持播放列表和频道的检索功能。

本文主要介绍使用到的Searcher功能,通过API随机检索youtube视频,并提取视频相关信息。

1、准备阶段

在使用Youtube Data API前,需要用户通过Google帐户才能访问Google API控制台,注册获取API密钥。
进入控制台 https://console.developers.google.com/ 创建项目。

项目创建成功后,进入API控制台选择刚注册的项目开启API https://console.developers.google.com/apis/enabled

在API列表中搜索youtube,找到YouTube Data API v3开启即可。

2、视频检索

youtube视频在服务器中存在一个唯一索引即vid。视频检索,即检索一个有效的vid

random_string = 'LXU' # 随机字符串
api_key = '注册获取的API_KEY'
api_uri = 'https://www.googleapis.com/youtube/v3/
vid_random_search_url = f'{api_uri}search?key={api_key}&maxResults=10&part=id&type=video&q={random_string}'
# maxResults=10表示检索结果的最大个数为10

通过curl即可检索到视频的vid。

3、检索视频信息

API提供的视频信息主要包括以下内容:

snippet

title(标题),description(描述),publishedAt(发布时间),channelTitle(频道标题),channelId(频道ID),categoryId(视频所属类别ID)

contentDetails

duration(视频时长),dimension(2d/3d),definition(清晰度/分辨率hd/sd)

statistics

viewCount(观看),likeCount(点赞),dislikeCount(点踩),favoriteCount(喜爱),commentCount(评论)

# 检索方式为:
vid = 'ZQrOIZgGbgQ'
video_info_search_url = f'{api_uri}videos?id={vid}&part=snippet,contentDetails,statistics,topicDetails&key={api_key}'

4、检索CategoryId对应的类别名称

根据视频的主题/分类CategoryId检索主题名/分类名。

topicDetails

relevantTopicIds, topicCategories

# 检索方式
categoryId = '10'
video_category_search_url = f'{api_uri}videoCategories?part=snippet&id={categoryId}&key={api_key}'

5、结果

5.1、URI

https://www.googleapis.com/youtube/v3/search?key=***API_KEY***&maxResults=2&part=id&type=video&q=LXU
https://www.googleapis.com/youtube/v3/videos?id=ZQrOIZgGbgQ&part=snippet,contentDetails,statistics,topicDetails&key=***API_KEY***
https://www.googleapis.com/youtube/v3/videoCategories?part=snippet&id=28&key=***API_KEY***
https://www.googleapis.com/youtube/v3/videos?id=y0LRXBQDpRI&part=snippet,contentDetails,statistics,topicDetails&key=***API_KEY***
https://www.googleapis.com/youtube/v3/videoCategories?part=snippet&id=10&key=***API_KEY***

5.2、检索结果

[{'vid': 'ZQrOIZgGbgQ','randomString': 'LXU','snippet': {'title': 'LXU casa prefabbricata','description': 'Il portale per consultare i prezzi case prefabbricate, case prefabbricate in legno, case prefabbricate in cemento armato.\nI progetti, i prezzi, i cantieri e le news sulle case prefabbricate','publishedAt': '2017-02-28T06:10:57Z','channelTitle': 'Prezzi Case Prefabbricate','channelId': 'UClZBymX5oADLQ_5SYGEekcg','categoryId': '28','categoryName': 'Science & Technology'},'contentDetails': {'duration': 64,'dimension': '2d','definition': 'hd'},'statistics': {'viewCount': '52553','likeCount': '144','dislikeCount': '19','favoriteCount': '0'},'topicDetails': {'relevantTopicIds': ['/m/019_rr', '/m/03glg', '/m/019_rr', '/m/03glg'],'topicCategories': ['https://en.wikipedia.org/wiki/Hobby', 'https://en.wikipedia.org/wiki/Lifestyle_(sociology)']}
}, {'vid': 'y0LRXBQDpRI','randomString': 'LXU','snippet': {'title': 'LxU - #hot16challenge2  feat. FakeFreshDumbledore [Prod. Call Me G]','description': 'Souncloud: https://soundcloud.com/user-370669292/hot16bars2-feat-fakefreshdumbledore\n\n!!!HINWEIS!!! \n\nDieses grandiose Produkt überragender Kompetenz wurde innerhalb von 72h aufgenommen, gefilmt und geschnitten und das sieht/hört man auch.\n\nWir übernehmen keine Verantwortung für eventuelle Verdummung und/oder daraus resultierende Abstumpfung durch den Konsum dieses Meisterwerks!\n\n\n\nHintergrund #hot16challenge2 :\n\nHot16challenge ist eine Initiative für Rapper und Sänger. Die Idee der Aktion ist, einen Vers mit 16 Takten aufzunehmen, ihn zu veröffentlichen und dann vier weitere Künstler zu nominieren, die 72 Stunden Zeit haben, um zu antworten. Hauptziel von Hot16challenge ist es, so viele Künstler wie möglich zu aktivieren und zuerst die Hip-Hop-Industrie und dann hoffentlich die gesamte Musikindustrie zu mobilisieren, um COVID-19 durch Musik zu bekämpfen. Hot16challenge-Teilnehmer und ihre Fans können auf  https://www.gofundme.com/f/hot16chall... den Kampf gegen den Coronavirus spenden.\n\nVor sechs Jahren wurde #hot16challenge als Künstler-zu-Künstler-Bewegung viral. Jetzt starten wir eine Fortsetzung, aber mit einer gemeinnützigen Wendung und weltweit. \n\n\n\n\n\nNominierungen:\n\nLyrisLost:\nInstagram: https://www.instagram.com/lyrislost/\nYoutube: https://www.youtube.com/channel/UC0OZQYa84UxpPCnKN9HO51w\n\n\nLUV: SOLU :\nInstagram: https://www.instagram.com/luv_solu/\nYoutube: https://www.youtube.com/channel/UCOSGrBIYQbANrY-gsxCGkGA\n\n\nEminem:\nInstagram: https://www.instagram.com/eminem/\nYoutube: https://www.youtube.com/user/EminemMusic\n\n\nHelene Fischer:\nInstagram: https://www.instagram.com/helenefischer/\nYoutube: https://www.youtube.com/user/helenefischer\n\n\n\n\n\nLEUTE HINTER DIESEM MEISTERWERK :\n\n\n\nBeat: https://www.youtube.com/watch?v=T0Tkd6m6kpI \n\nCall me G: https://www.youtube.com/channel/UCiFS_E_63VjpSxzbIP9iRZQ\n\n\n\n\n\nVideoschnitt mit meiner Regie:\nTius\nhttps://www.instagram.com/teasingtius/\n\n\n"Kamera": \nAlina\nhttps://www.instagram.com/alina_marie2606/ \n\n\n\nIdee:\n\nLxU \nInstagram: https://www.instagram.com/l__x__u/\nYoutube: https://www.youtube.com/channel/UCUx30nt2CwLLDlwcjOkmmRw\nGmail: luckasxunknow@gmail.com\n\n\n\nKUSS AN DIE EHRENMÄNNER IM VIDEO\n\n\n\nText:\n\nDas ist 16bars 2; Netflix teenage moms geil\nTeenage-Mutant-Ninja-Turtles, Hirnis sind mein Staatsfeind\nIch bin einfach nur geil, mache Wäsche wieder weiß\nBro sie nenn mich weißer Riese, dikker Stichwort Weißer Hai\n\nDiese Haiforscherbitches suchen keine Orca Snitch ey\nSie sind auf der Suche nach dem großen Weißen, in mein Slips ey\nBin so hart Lauch, vegane Hoes würden an meinem Meat nagen\nDu bist so nen Spast gönnst dir ne Polin in nem Mietwagen\n\nSchreibe alle Texte in der Hotboxmatrix\nGeheimratsecken sind auf dieser Überbossbasis \nAlle sagen immer ich wär von Medusa gefickt\nDoch ich bin nur stoned lookalike von *picklerick*\n\nIch penetrier deine Mum mit meinem scheiß Enderstab\nBaller ihn rein wie ein Kolben und sie schreit wie ein Schaf\nDeine Mum möcht Hertha/härter bangen, ya sie steckt in einer Krise\nDoch das geht nicht denn die ist ne Randerscheinung, KÖLNER ZIEGE\n\nHook (Fake Fresh Dumbledore):\n16bars, Hook bin der Hellste nennt mich Lampenlord\nIch werde zwar alt doch bleib für immer\nFresh Dumbledore\nBaller weiter deine Mum doch nicht mehr mit dem Enderstab\nScheiß einfach MC man und gönn ihr jetzt mit Elderstab! \n\n\n\n\n\nDANKE FÜR DIE NOMINIERUNG AN NIKLAS AKA LUCKYPUNCH.\n\n\n!!! EHRE AN ALLE DIE MIR NEN FEEDBACK IN DEN KOMMENTAREN HINTERLASSEN !!!','publishedAt': '2020-05-23T17:00:12Z','channelTitle': 'Luckas x Unknow','channelId': 'UCUx30nt2CwLLDlwcjOkmmRw','categoryId': '10','categoryName': 'Music'},'contentDetails': {'duration': 156,'dimension': '2d','definition': 'hd'},'statistics': {'viewCount': '190','likeCount': '21','dislikeCount': '0','favoriteCount': '0','commentCount': '4'},'topicDetails': {'relevantTopicIds': ['/m/0glt670', '/m/04rlf', '/m/04rlf', '/m/0glt670'],'topicCategories': ['https://en.wikipedia.org/wiki/Hip_hop_music', 'https://en.wikipedia.org/wiki/Music']}
}]

Youtube Data API使用简介相关推荐

  1. YouTube Data API v3 (DotNet) 编译和字幕下载代码使用示例

    背景: YouTube Data API v3 是可以用来管理youtube 上的视频的开放接口API,可以进行增删改查,以及用于服务器端管理大企业客户中的资源的对接API,在当今短视频爆火的年代,许 ...

  2. 使用Youtube官方API获取频道及视频数据

    2020-06-04更新 下面附上笔者提供的源码(已经验证过功能.后续会在同一个工程中更新Facebook和Insgram的相关爬虫代码). https://github.com/zhangjz777 ...

  3. 动态数据交换(DDE, Dynamic Data Exchange)简介

    动态数据交换(DDE, Dynamic Data Exchange)简介 1.简介     DDE是一种动态数据交换机制(Dynamic Data Exchange,DDE).使用DDE通讯需要两个W ...

  4. ML之API:国内外各大人工智能平台(百度云/华为云/阿里云/Face++等)及其API的简介、使用方法之详细攻略

    ML之API:国内外各大人工智能平台(百度云/华为云/阿里云/Face++等)及其API的简介.使用方法之详细攻略 目录 一.百度云api 1.api之CV 二.旷视科技(face++)api 1.a ...

  5. tfds.load()和tf.data.Dataset的简介

    tfds.load()和tf.data.Dataset的简介 tfds.load()有以下参数 tfds.load(name, split=None, data_dir=None, batch_siz ...

  6. PyTorch C++ API libtorch 简介

    PyTorch C++ API libtorch 简介 翻译自 PyTorch 官方文档:https://pytorch.org/cppdocs/index.html#acknowledgements ...

  7. API Server简介

    一.API Server简介 1.1 API Server功能 k8s API Server提供了k8s各类资源对象(pod,RC,Service等)的增删改查及watch等HTTP Rest接口,是 ...

  8. 身份信息核验API接口简介

    身份信息核验接口可以帮助互联网行业解决用户实名难题,有助于搭建互联网信用体系,促进互联网良性发展.目前,身份信息核验接口广泛的用于注册.实名验证.门禁.酒店登记系统等应用场景.下面,我们来具体的了解下 ...

  9. DL框架之TensorFlow:深度学习框架TensorFlow Core(低级别TensorFlow API)的简介、安装、使用方法之详细攻略

    DL框架之TensorFlow:TensorFlow Core(低级别TensorFlow API)的简介.安装.使用方法之详细DL框架之TensorFlow:深度学习框架TensorFlow Cor ...

最新文章

  1. JavaEE 获取路径全攻略
  2. Java里的数组介绍
  3. 排查链接是否失效_如何进行移动站点流量排查?
  4. 【实战篇】| 小鹿教你用动态规划撩妹的正确方式
  5. 计算机网络技术教材多少钱,计算机网络技术课程标准教材.doc
  6. JS的三大组成(ES,DOM,BOM)
  7. package.json作用
  8. hihocoder 1866 XOR
  9. POJ 1595 素数打表水题
  10. 电机噪声之谐波分析(内附simulink中FFT分析的相关参数配置与解析)
  11. stm32f207/stm32f407擦除内部flash讲解
  12. Excel如何批量删除所有空格
  13. php安全漏洞怎么修复,thinkphp漏洞如何修复
  14. android windows 分区大小,真正的安卓Windows双系统,RemixOS Windows共存系统安装+附带ROOT+大分区...
  15. Excel PivotTable 使用心得手顺分享(六)
  16. c语言中执行cl exe时出错,执行cl.exe时出错怎么办
  17. strcpy和strncpy的区别
  18. SQLServer uniqueidentifier 类型
  19. 利用facebook graph api发送图片
  20. python绘制蚊香形_python之turtle画蚊香

热门文章

  1. 增量学习BiC: Large Scale Incremental Learning
  2. Symbol - 看似平凡的Symbol其实我们每天都在用 - 对象操作
  3. 计算机应用杂志论文格式要求,计算机应用专业论文格式说明.doc
  4. slack软件怎么用
  5. Rockchip 红外遥控开发指南
  6. python调用shell命令
  7. 23位华人学者入选!2022年ACM杰出会员名单公布!
  8. speedoffice(word)如何修改段落间距
  9. wordpress如何给文章添加浏览量,使用插件WP-PostViews
  10. ASO优化_积分墙优化打量,广告投放策略