如何通过Google API获取适配Smiirl计数器的简化版YouTube订阅数
用Google Apps Script中转实现Smiirl所需的扁平数据格式
YouTube Data API本身没法直接返回仅包含subscriberCount的扁平JSON结构,所以最直接的办法是搭一个简单的中转服务,把API返回的嵌套数据转换成Smiirl能识别的格式——用Google Apps Script就能快速实现,不用额外服务器。
具体步骤:
新建Google Apps Script项目
打开Google Apps Script,创建空白项目。替换脚本内容
把默认的Code.gs代码改成下面这段,记得替换占位符:function doGet(e) { // 替换成你的YouTube频道ID const channelId = "YOUR_CHANNEL_ID"; // 替换成已启用YouTube Data API v3的Google API密钥 const apiKey = "YOUR_API_KEY"; // 调用YouTube API拉取订阅数据 const apiUrl = `https://www.googleapis.com/youtube/v3/channels?part=statistics&id=${channelId}&key=${apiKey}`; const response = UrlFetchApp.fetch(apiUrl); const rawData = JSON.parse(response.getContentText()); // 提取订阅数并构造扁平结构 const flatData = { subscriberCount: rawData.items[0].statistics.subscriberCount }; // 返回符合要求的JSON return ContentService.createTextOutput(JSON.stringify(flatData)) .setMimeType(ContentService.MimeType.JSON); }部署为Web应用
- 点击右上角「部署」→「新建部署」
- 类型选择「Web应用」,执行权限选「我」,访问权限选「任何人,甚至匿名」(Smiirl需要能访问这个地址)
- 部署完成后复制生成的Web应用URL
配置Smiirl
把这个URL填入Smiirl的数据源设置中,就能直接获取到它需要的{"subscriberCount": "X"}格式数据了。
注意事项:
- 你的Google API密钥必须已启用YouTube Data API v3,且配额足够支撑请求频率
- 如果需要支持多个频道,可以修改脚本,通过URL参数(比如
?channelId=XXX)动态传入频道ID,实现一个服务复用
内容的提问来源于stack exchange,提问作者JayIsHere
相关产品推荐
相关产品推荐

