J'écris du code pour valider les URL YouTube. Est-il garanti que l'ID vidéo, tel que oHg5SJYRHA0
, comporte toujours exactement 11 caractères, ou peut-il parfois être plus court ou plus long? Existe-t-il une documentation officielle à ce sujet?
J'écris du code pour valider les URL YouTube. Est-il garanti que l'ID vidéo, tel que oHg5SJYRHA0
, comporte toujours exactement 11 caractères, ou peut-il parfois être plus court ou plus long? Existe-t-il une documentation officielle à ce sujet?
Réponses:
Ils s'en tiendront probablement à 11 caractères pendant longtemps. Chaque caractère a 64 valeurs possibles:
2 * 26 lettres (minuscules et majuscules) + 10 pour les chiffres, + 2 pour les caractères "_" et "-"
2 * 26 + 10 + 2 = 64
Puis 11 caractères au total:
64 ^ 11 = 73786976294838210000 (ou plus ou moins "73,7e18")
Bien sûr, toutes les combinaisons ne seront pas utilisées, selon leur algorithme, mais elles ne le changeront probablement pas de sitôt. Les mots d'un développeur YouTube indiquent qu'ils ne garantissent pas, cependant:
Je ne vois nulle part dans la documentation où nous nous engageons officiellement à une longueur standard de 11 caractères pour les identifiants vidéo YouTube. C'est l'une de ces choses où nous avons une implémentation actuelle, et cela peut rester ainsi indéfiniment. Mais nous n'offrons aucun engagement officiel à cet égard, alors procédez à vos risques et périls.
Une meilleure approche, bien que plus impliquée, serait de prendre chaque identifiant vidéo et de faire une demande à l'API YouTube pour voir si elle est valide. Par exemple, créez un HTTP GET pour
http://gdata.youtube.com/feeds/api/videos/VIDEO_ID
et voyez si vous obtenez une réponse HTTP 200. Bien sûr, si vous adoptez cette approche, les vidéos qui ont été supprimées de YouTube reviendront comme non valides (ce qui peut ou non être ce que vous voulez) et les vidéos qui ont été téléchargées très récemment sur YouTube peuvent également revenir comme non valides.
Cordialement, -Jeff Posnick, équipe API YouTube
Quelque chose qui mérite d'être souligné, quelques URL pointent vers la même vidéo. Par exemple, dans les vidéos publiées ci-dessous, ce sont tous "Les prix Nobel 2015!" par Scishow:
De plus, si vous changez le dernier caractère en C
ou D
cela fonctionnera aussi.