web-dev-qa-db-ja.com

YouTube動画のIDの形式

すべてのYouTubeビデオには、取得に使用できる一意のIDがあります。たとえば、http://www.youtube.com/watch?v=aN46pEO_jX8のビデオのIDはaN46pEO_jX8です。

いくつかの観察の後、これらのIDは次の2つのルールに従うように見えます。

  • 正確に11文字
  • 許可される記号:a-z、A-Z、0-9、-、および_

私は知りたいです:

  1. これら2つのルールが両方とも常に正しいかどうか。
  2. 従うべき重要な他のルールがある場合。
30
asfallows

Youtube 2.0 APIドキュメント および .0 APIドキュメント によると、videoIdは文字列であり、現在使用されている文字セットについては何も指定されていません...

約11文字の長さ、 Youtube APIチームからの投稿 say:

YouTubeの動画IDの標準の長さである11文字を公式にコミットしているドキュメントには、どこにも記載されていません。現在実装されているものの1つであり、無期限にそのままである可​​能性があります。しかし、私たちはそれに対する公式のコミットメントを提供していませんので、あなた自身の責任で進めてください。

そして最後になりましたが、 別の投稿で明確化 (またはそうではない)形式:

動画IDの形式については、いかなる公的な保証も行いません。現在、文字、数字、句読点を含む11文字の文字列ですが、アプリケーションにハードコーディングすることはお勧めしません(将来変更する簡単な方法がない限り)。

Youtubeチームは、Video_IDが正しいかどうかをYoutubeサーバーに直接問い合わせることを好むようです(既存のビデオを参照)。

ランダムなユーザー入力が有効なビデオIDに対応していることを検証する必要がある場合は、経験的なテストを行うことをお勧めします。アクセスを試みる

http://gdata.youtube.com/feeds/api/videos/VIDEO_ID

200の応答を受け取った場合、VIDEO_IDは有効です。 200以外の応答を受け取った場合、無効なIDがあります。新しくアップロードされたビデオやプライベートビデオにはEdgeのケースがいくつかありますが、ほとんどの場合、それで問題ないと思います。

36
Cédric Julien