YouTube URLを検証するコードを書いています。などの動画IDのoHg5SJYRHA0
長さは常に正確に11文字であることが保証されています か、それとも短くなることも長くなることもありますか?これに関する公式文書はありますか?
YouTube URLを検証するコードを書いています。などの動画IDのoHg5SJYRHA0
長さは常に正確に11文字であることが保証されています か、それとも短くなることも長くなることもありますか?これに関する公式文書はありますか?
回答:
彼らはおそらく11文字に長い間固執するでしょう。各文字には64の可能な値があります。
2 * 26文字(小文字および大文字)+ 10桁、+ 2は "_"および "-"文字
2 * 26 + 10 + 2 = 64
次に、合計11文字:
64 ^ 11 = 73786976294838210000(または多かれ少なかれ「73,7e18」)
もちろん、アルゴリズムによっては、すべての組み合わせが使用されるわけではありませんが、おそらくすぐに変更されることはないでしょう。ただし、YouTube開発者からの言葉は、保証するものではないと述べています。
YouTubeの動画IDの標準の長さである11文字を公式にコミットしているドキュメントには、どこにも記載されていません。現在実装されているものの1つであり、無期限にそのままである可能性があります。しかし、私たちはそれに対する公式のコミットメントを提供していませんので、あなた自身の責任で進めてください。
より複雑な方法ではありますが、より良い方法は、各ビデオIDを取得し、YouTube APIにリクエストを行って有効かどうかを確認することです。たとえば、HTTP GETを行う
http://gdata.youtube.com/feeds/api/videos/VIDEO_ID
HTTP 200応答が返されるかどうかを確認します。もちろん、そのアプローチをとると、YouTubeから削除されたビデオは無効になり(必要な場合もそうでない場合もあります)、最近YouTubeにアップロードされたビデオも無効になります。
乾杯、-Jeff Posnick、YouTube APIチーム
ソース:https : //web.archive.org/web/20120306111051/http : //osdir.com/ml/youtube-api-gdata/2009-10/msg00237.html
指摘する価値があるのは、いくつかのURLが同じビデオを指していることです。たとえば、以下に掲載されているビデオでは、それらはすべて「2015年ノーベル賞!」Scishowによる:
あなたが最後の文字を変更した場合も、C
またはD
それはあまりにも動作します。