首页 > 解决方案 > 无法从 youtube 数据 api 接收活动数据?

问题描述

我试图构建一个应用程序,每 x 秒发出一次 youtube-api 活动列表请求,以查找某些频道上发生的新事物。代码运行良好,但有些渠道没有给我关于活动的回复。该请求将正常工作并且没有错误,但没有数据。

希望您知道我的意思,并且有人可以为我提供解决方案。

也在这里尝试过:https ://developers.google.com/youtube/v3/docs/activities/list

但同样的问题 - 请求成功但里面没有物品。

标签: youtube-apiyoutube-data-api

解决方案


Activities:List我也无法使用API 请求获取该频道 ID 的新上传信息。但是,我能够使用不同的 API 请求(实际上是两个系列)并成功获取 50 个最近上传的内容。

如果您只需要上传,如您的评论所示,这可能是一个解决方案。它使用Channels:ListPlaylistItems:List API 请求,每个配额成本为一个单位:

首先,Channels:List 调用检索上传的播放列表 ID: 获取播放列表 ID:

https://www.googleapis.com/youtube/v3/channels?part=contentDetails&id=UCJgcqQq2WyJf35ovKj8fFeQ&maxResults=10&fields=items&order=date&key=YOUR_API_KEY

来自 Youtube 的响应包含 JSON 代码:

{
 "items": [
  {
   "kind": "youtube#channel",
   "etag": "\"XpPGQXPnxQJhLgs6enD_n8JR4Qk/JLM6UA_xPnpiDQtL6ILexatJ0sc\"",
   "id": "UCJgcqQq2WyJf35ovKj8fFeQ",
   "contentDetails": {
    "relatedPlaylists": {

"上传": "UUJgcqQq2WyJf35ovKj8fFeQ",

     "watchHistory": "HL",
     "watchLater": "WL"
    }
   }
  }
 ]

使用上述响应中的上传播放列表 ID,进行 PlaylistItems:List 调用。Max-results最多设置 50 个最新项目:

https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&fields=nextPageToken,items(snippet(publishedAt,title,description,thumbnails(default(url)),resourceId(videoId)))&playlistId=UUJgcqQq2WyJf35ovKj8fFeQ&maxResults=50&order=date&key=YOUR_API_KEY

响应包含 50 个最新视频,按日期排序。包括发布日期、标题、描述、缩略图 url、视频 ID 和下一页令牌(如果您想获得 50 多个项目,则使用):

{
 "nextPageToken": "CDIQAA",
 "items": [
  {
   "snippet": {
    "publishedAt": "2019-06-07T18:30:01.000Z",
    "title": "BATMAN a Telltale Story | Folge 22 [Deutsch LP]",
    "description": "! Willkommen Freund von #GamingausLeidenschaft !\n\nFolge 22 zeigt wer der wahre maskierte Rächer Gothams ist.\n\n!!Viel Spass!!\n****************************** \nDir gefällt was ich mache? \nDann lass es am besten alle wissen und schlag doch \netwas den Subscribe/Abobutton der braucht Nähe ;)\nDu warst nicht Zufrieden?\nDann lass dir freien Lauf das in den Kommentaren zu erwähnen :)\nJede Form von Feedback sehe ich als Support!\n******************************\nTweet me: twitter@brille591 \n******************************\nDiscord Server : https://discord.gg/eRwmFM\n******************************\nFalls du möchtest kannst du mir unter diesem Link:\n\nhttps://streamlabs.com/Skarkerino\n\nein kleines Trinkgeld zukommen lassen \n(alles wird in Equipment und Qualitätsverbesserung gesteckt) \nAktuelles Ziel: RAM\n******************************\nÜBER DIESES SPIEL\nBatman: The Telltale Series ist ein am 2. August 2016 veröffentlichtes Computerspiel des Entwicklers Telltale Games. \nDatum der Erstveröffentlichung: 2. August 2016\n-\nSpiel-Engine: Telltale Tool\nSprache: Englisch (Audio), Deutsch (Untertitel)\nHerausgeber: Telltale Games\nPlattformen: PlayStation 4, Android, Nintendo Switch, Xbox One, PlayStation 3, Xbox 360, Microsoft Windows, iOS\nDesigner: Mark Darin, Michael Kirkbride\n\n#BATMAN\n#Telltale\n#Brille591\n#Optiksquad\n#Deutsch\n#LP\n#DC\n#WB",
    "thumbnails": {
     "default": {
      "url": "https://i.ytimg.com/vi/ZZSDYaW0nxw/default.jpg"
     }
    },
    "resourceId": {
     "videoId": "ZZSDYaW0nxw"
    }
   }
  }, ... etc.

推荐阅读