Youtube Data API 教学 - 看透你的频道你的心 channels.list

「鲑鱼均,因为一场鲑鱼之乱被主管称为鲑鱼世代,广义来说以年龄和脸蛋分类的话这应该算是一种 KNN 的机器学习,不正经的数据分析师,毕业後把人生暂停了半年,在 Google 和 AWS 办过几场演讲,缓下脚步的同时找了份跨领域工作。偶而慢跑、爱跟小动物玩耍。曾立过很多志,最近是希望当一个有细节的人。」


Youtube Data API 教学 - 看透频道你的心 channels.list

与其在一本书里画 100 条线,不如读 100 本书,每一本只画一条线,你的频道有什麽资讯我都可以知道,而且我只抓里面最重要的内容,这篇是 Python - 数位行销的 Youtube 分析教学系列文章的第 10 篇,也是我参加 2021 iThome 铁人赛中系列文章的第 10 天。

系列文章:Python — 数位行销分析与 Youtube API 教学
昨日回顾:Youtube Data API 教学 - 看透你的频道你的心 channels.list

关於 channels.list() 的功能

趁着周末时刻找了点时间细细的阅读文字,今天在阅读土井英司董事长的知名着作《一流的人读书,都在哪里画线》,其中有这麽一句话令我印象深刻且贯穿整部作品,「与其在一本书里画 100 条线,不如读 100 本书,每一本只画一条线」,对於进入社会後的我们,如何从庞杂、陌生的领域中建立起让自己成长的知识基础是最重要的。能够从上千行文句中挖掘出最珍贵的内容,是帮助自己的职涯或事业的新契机。

离题了,但今天所要讲的 Captions.list() 重点就如同土井董事长所强调的那句话,「每一本只画一条线」,每个频道创作者就像是一本故事书一样,里面一步步的影片就如同章节般,可以了解一个人的故事线是怎麽进行的,Captions 可以抓取频道创作者的内容,今天会以“老高与小茉 Mr & Mrs Gao” 做为测试对象介绍这个方法。

截图 2021-09-25 22.24.14.png

抓取个人资讯 (About) 作为测试

一般来说频道中我们可以看见许许多多的资讯,这个资讯可以是频道内容、频道名称、频道观看次数、也可以是他的个人简介,有非常多的方法的资讯可以进行取用,这边试写一个简单的参数做测试,我们先确定我们所要抓取频道的频道 ID,在进入频道後从上方来看网址名称,以老高与小茉 Mr & Mrs Gao 为例,频道 ID 就会是“UCMUnInmOkrWN4gof9KlhNmQ”。

截图 2021-09-25 22.25.41.png

  • 知道频道 ID 後我们就能够开始进行程序设计撰写.可以从 Captions.list() 中的 part 去设定 snippet,而频道的 ID 及设定为 UCMUnInmOkrWN4gof9KlhNmQ。
def youtube_searchChannels():
    request = youtube.channels().list(
        part= "snippet",   
        id= "UCMUnInmOkrWN4gof9KlhNmQ" 
    )
    response = request.execute()
    print(response,"\n")

if __name__ == '__main__':
    youtube_searchChannels()

截图 2021-09-25 22.22.44.png

  • 从中我们可以得到一些资讯包括 'title': '老高与小茉 Mr & Mrs Gao'、'description': '大家好!这里是【老高与小茉 Mr & Mrs Gao】.... 等等之类的,我们直接把重点资讯印出给大家看看,可以看见我们用 Captions.list() 能够抓到他的标题、描述、创立时间等等的资讯。

截图 2021-09-25 22.32.53.png

除了标题和资讯,还可以更进阶

当然,Captions.list() 能够做到的功能绝对不止这样,更进阶来说我们甚至可以抓到细微的数字内容,这边以数值内容做范例来说,可以从 Captions.list() 中的 part 去设定 "statistics",注意跟刚刚不同,这边是 Statistics ,而频道的 ID 设定为 UCMUnInmOkrWN4gof9KlhNmQ。

def youtube_searchChannels():
    request = youtube.channels().list(
        part= "statistics",   
        id= "UCMUnInmOkrWN4gof9KlhNmQ" 
    )
    response = request.execute()
    print(response,"\n")

if __name__ == '__main__':
    youtube_searchChannels()

截图 2021-09-25 22.37.23.png

  • 这边就是所显示的内容,包含了频道观看次数 (View Count) , 隐藏订阅者数量(hiddenSubscriberCount), 影片数量 (videoCount),像刚刚一样我们直接把重点资讯印出给大家看看,可以看见我们用 Captions.list() 能够抓到他的资讯。

截图 2021-09-25 22.40.59.png

  • 大功告成,我们可以得到这个频道的详细资讯了,老高与小茉 Mr & Mrs Gao 频道,创立於 2014-11-18,包含了他的介绍跟总观看次数为 9.8亿次 (988303255),截至目前 (2021.09.25) 一共上传了 202 部影片,我们拿原本频道的资讯来对照一下,除了观看次数的前後台计算差值外,资讯大致吻合!

截图 2021-09-25 22.43.00.png

总结一下今天的结果!

今天说明了频道资讯的抓取方法,以下是其所需要花费的 Quota 数:

  • 频道资讯
    channels.list -1
    channels.update -50

谢谢你的阅读,如果有时间也欢迎看看我的夥伴们的文章:
lu23770127 — SASS 基础初学三十天
10u1 — 糟了!是世界奇观!
juck30808 — Python — 数位行销分析与 Youtube API 教学
HLD — 浅谈物件导向与Design Pattern介绍
SiQing47 — 前端?後端?你早晚都要全端的,何不从现在开始?

Jerry Chien

【鲑鱼均】 现职是 200 多万订阅 Youtuber 的数据分析师,专长在 Python 的开发与使用,大学虽然是资讯背景但总是斜杠跑到商管行销领域,以工作角度来说的话,待过 FMCG、通讯软件、社群影音产业,也算是个数位行销体系出生的资讯人。这 30 天铁人挑战赛会从数位行销角度去重新切入数据分析这件事情,期待这个资本主义的社会中,每个人能在各个角力间不断冲突而渐能找到一个平衡点回归最初的统计建立最终的初心。

下一篇:Youtube Data API 教学 - 频道区块分类 channelSections


<<:  谈谈SQLite

>>:  Day09【Web】跨来源资源共用 CORS

菜鸟日记Day 29-用Chart.js制作图表

原本要使用C3.js搭配D3.js套件制作动态图表,但不知为何一直无法正常抓取D3.js的cdn档案...

[Day20] Scrum失败经验谈 – 只想得太大太远

Scrum是大家想要导入的文化与工具,在分享了很多工具、体会和方法後,感觉是个好时机要来讲如何导入s...

小知识 - Google Sheets 与 Excel 世仇之战

「鲑鱼均,因为一场鲑鱼之乱被主管称为鲑鱼世代,广义来说以年龄和脸蛋分类的话这应该算是一种 KNN 的...

每个人都该学的30个Python技巧|技巧 13:什麽都能装的百宝袋—串列(List)(上)(字幕、衬乐、练习)

之前教过了条件判断还有回圈,这些都可以让程序遇到不同状况的时候做出不同的动作。也有讲到数值、字串等好...

网域申请看过来!3步骤带你一次搞定网域名称

网域名称申请,严格说起来就是在想办法获取最後一个点之後的最後一部分。目前大多数台湾品牌网站,都以.c...