[解決済み] YouTube API バージョン 3 で動画の継続時間を取得するにはどうすればよいですか?
2022-12-05 03:13:20
質問
YouTube API v3を使ってYouTubeを検索しています。
https://developers.google.com/youtube/v3/docs/search
ご覧のとおり、応答 JSON には動画の継続時間が含まれていません。ビデオの再生時間を取得する方法はありますか?
できれば、結果の各要素に対して API を再度呼び出さないようにしてください(それが継続時間を取得する唯一の方法である場合を除きます)。
どのように解決するのですか?
検索呼び出しを行った後に、YouTube データ APIのビデオリソースを呼び出す必要があります。検索には最大50のビデオIDを入れることができるので、各要素ごとに呼び出す必要はないでしょう。
https://developers.google.com/youtube/v3/docs/videos/list
を設定することになります。
part=contentDetails
というのは、デュレーションがそこにあるからです。
例えば、次のような呼び出しです。
https://www.googleapis.com/youtube/v3/videos?id=9bZkp7q19f0&part=contentDetails&key={YOUR_API_KEY}
このような結果になります。
{
"kind": "youtube#videoListResponse",
"etag": "\"XlbeM5oNbUofJuiuGi6IkumnZR8/ny1S4th-ku477VARrY_U4tIqcTw\"",
"items": [
{
"id": "9bZkp7q19f0",
"kind": "youtube#video",
"etag": "\"XlbeM5oNbUofJuiuGi6IkumnZR8/HN8ILnw-DBXyCcTsc7JG0z51BGg\"",
"contentDetails": {
"duration": "PT4M13S",
"dimension": "2d",
"definition": "hd",
"caption": "false",
"licensedContent": true,
"regionRestriction": {
"blocked": [
"DE"
]
}
}
}
]
}
時刻はISO 8601の文字列としてフォーマットされる。PTはTime Durationの略で、4Mは4分、13Sは13秒を表します。
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン