我需要在我的网站上显示我的YouTube频道上最新视频的缩略图,并添加指向该视频的链接。使用 API 参数日期时,它会显示该频道中的第一个视频。取而代之的是,我需要最后发布的视频详细信息如何解决此问题
这是我使用的,因为我只需要最后一个视频
https://www.googleapis.com/youtube/v3/search?key=[key]&channelId=[channel-id]&part=snippet,id&order=relevance&maxResults=1
(选项 1)
您可以尝试将order=relevance
替换为order=date
尝试:
https://www.googleapis.com/youtube/v3/search?key=[key]&channelId=[channel-id]&part=snippet,id&order=date&maxResults=1
(选项 2)
您也可以尝试使用publishedAfter
命令(采用年-月-日格式)。
示例:publishedAfter=2019-03-25T00:00:00Z
(因为昨天是 3 月 25 日)。
尝试:
https://www.googleapis.com/youtube/v3/search?key=[key]&channelId=[channel-id]&part=snippet,id&publishAfter=2019-03-25T00:00:00Z&order=date&maxResults=1
(选项 3)
使用您的编程语言获取/读取频道uploads
页面的 HTML 源代码。gridVideoRenderer
后面列出的第一个缩略图是最新的,以及相关的 URL。
示例步骤:
1)转到用户的上传页面,使用"查看源代码"选项查看HTML文本(源代码)。
此文本是当您http 请求频道上传链接时,您的编程语言应向您显示的文本。
https://www.youtube.com/user/MARVEL/videos
2)获取(或查看)源代码后
-
从那里找到单词的位置
gridVideoRenderer
. -
然后从位置之后开始,现在找到单词
"url":"
的第一个出现。 -
那就是网址。手动提取或编写代码以自动提取。
PS:替换链接中的任何 unicode,例如u0026
用&
.
https://i.ytimg.com/vi/QuP7V2gKgPI/hqdefault.jpg?sqp=-oaymwEZCPYBEIoBSFXyq4qpAwsIARUAAIhCGAFwAQ==&rs=AOn4CLDBeSfAIiCdLDKtA8h2G-AZqk-xhQ
我用自己的键尝试了"选项 1",并得到了正确的响应,就"频道"中的哪个"视频"而言 - 没有缩略图,只是引用它/它们,代码如下:
{
"kind": "youtube#searchListResponse",
"etag": "EymHvUd1w4o13UcSUT0C9YINu3o",
"nextPageToken": "CAEQAA",
"regionCode": "US",
"pageInfo": {
"totalResults": 181,
"resultsPerPage": 1
},
"items": [
{
"kind": "youtube#searchResult",
"etag": "23QGL4Y9Du8EXMntX5ZNdr1F7_k",
"id": {
"kind": "youtube#video",
"videoId": "RRQjUvoSuKU"
},
"snippet": {
"publishedAt": "2022-11-13T15:09:07Z",
"channelId": "UCbhMYK2QQXgHjgnMN3zegRQ",
"title": "All Things Closely",
"description": "Luke 1:1-4.",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/RRQjUvoSuKU/default.jpg",
"width": 120,
"height": 90
},
"medium": {
"url": "https://i.ytimg.com/vi/RRQjUvoSuKU/mqdefault.jpg",
"width": 320,
"height": 180
},
"high": {
"url": "https://i.ytimg.com/vi/RRQjUvoSuKU/hqdefault.jpg",
"width": 480,
"height": 360
}
},
"channelTitle": "Restoration Church Homestead",
"liveBroadcastContent": "none",
"publishTime": "2022-11-13T15:09:07Z"
}
}
]
}
这就是浏览器页面上显示的全部内容,没有缩略图 - 只有代码,但无法弄清楚如何获取字符串中的任何代码来播放该视频...... 有什么想法吗? 我希望它只是作为链接,而不是在服务器上加载的任何其他脚本。我错过了一些东西,我打赌可能很简单,以获取与要播放的数据相关的返回视频。