{"id":26026,"date":"2021-06-18T13:31:00","date_gmt":"2021-06-18T10:31:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=26026"},"modified":"2021-10-18T02:03:27","modified_gmt":"2021-10-17T23:03:27","slug":"comment-obtenir-des-balises-video-youtube-a-l-aide-de-l-api-youtube","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/fr\/comment-obtenir-des-balises-video-youtube-a-l-aide-de-l-api-youtube\/","title":{"rendered":"Comment obtenir des balises vid\u00e9o YouTube \u00e0 l&rsquo;aide de l&rsquo;API YouTube"},"content":{"rendered":"<p>R\u00e9cemment, j&rsquo;ai travaill\u00e9 sur un projet o\u00f9 notre client souhaite obtenir des balises de vid\u00e9os YouTube. Ils exploitent leur cha\u00eene YouTube et voulaient un utilitaire simple pour obtenir les balises de toute vid\u00e9o YouTube \u00e0 l&rsquo;aide de l&rsquo;URL de la vid\u00e9o. Dans cet article, je vous montre comment obtenir des balises vid\u00e9o YouTube \u00e0 l&rsquo;aide de l&rsquo;API YouTube.<\/p>\n<p>En utilisant cet utilitaire, on peut obtenir des balises de n&rsquo;importe quelle vid\u00e9o YouTube fournissant l&rsquo;URL de la vid\u00e9o correcte. Cela peut aider les YouTubers \u00e0 afficher les balises utilis\u00e9es pour leurs propres vid\u00e9os \/ celles de leurs concurrents. Cela ajoutera des avantages pour d\u00e9couvrir les balises pertinentes pour leurs vid\u00e9os.<\/p>\n<p>Vous trouverez ci-dessous les formats d&rsquo;URL possibles de n&rsquo;importe quelle vid\u00e9o YouTube. Vous devez utiliser l&rsquo;URL correspondant \u00e0 l&rsquo;un des formats ci-dessus.<\/p>\n<ul>\n<li><a href=\"https:\/\/youtu.be\/VIDEO_ID\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/youtu.be\/VIDEO_ID<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/embed\/VIDEO_ID\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/www.youtube.com\/embed\/VIDEO_ID<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=VIDEO_ID\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/www.youtube.com\/watch?v=VIDEO_ID<\/a><\/li>\n<\/ul>\n<h3>Commencer<\/h3>\n<p>Pour commencer, vous devez d&rsquo;abord obtenir une cl\u00e9 API \u00e0 partir de votre compte Google Console. Cette cl\u00e9 API est n\u00e9cessaire lors de l&rsquo;interaction avec les API YouTube. Sans cette cl\u00e9, YouTube consid\u00e8re tous les appels API entrants comme non autoris\u00e9s.<\/p>\n<p>Vous trouverez ci-dessous les \u00e9tapes pour r\u00e9cup\u00e9rer la cl\u00e9 API.<\/p>\n<ul>\n<li>Rendez-vous sur la console d\u00e9veloppeur de Google <a href=\"https:\/\/console.developers.google.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external\"><\/a><a href=\"https:\/\/console.developers.google.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/console.developers.google.com<\/a>.<\/li>\n<li>Cr\u00e9er un nouveau projet. En option, vous pouvez \u00e9galement s\u00e9lectionner un projet existant.<\/li>\n<li>Donnez un nom \u00e0 votre projet. Google Console cr\u00e9era un ID de projet unique pour vous.<\/li>\n<li>Votre projet nouvellement cr\u00e9\u00e9 appara\u00eetra en haut de la barre lat\u00e9rale gauche.<\/li>\n<li>Cliquez sur Biblioth\u00e8que dans le menu de gauche. Vous verrez une liste d&rsquo;API Google. Activez l&rsquo;API de donn\u00e9es YouTube.<\/li>\n<li>Ensuite, dans le menu de gauche, cliquez sur les informations d&rsquo;identification. S\u00e9lectionnez la cl\u00e9 API sous Cr\u00e9er des informations d&rsquo;identification.<\/li>\n<li>Copiez cette cl\u00e9 API.<\/li>\n<\/ul>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20170-6081c7503ee25.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20170-6081c7503ee25.png\" alt=\"Comment obtenir des balises vid\u00e9o YouTube \u00e0 l&#039;aide de l&#039;API YouTube\" ><\/a><\/p>\n<p>Apr\u00e8s cela, cr\u00e9ez un formulaire simple dans lequel vous pouvez ajouter une URL de vid\u00e9o YouTube et l&rsquo;envoyer pour un traitement ult\u00e9rieur.<\/p>\n<pre><code>&lt;form method=\"get\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;p&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"text\" name=\"ytvideo\" placeholder=\"Enter YouTube Video URL\" value=\"&lt;?php if (array_key_exists('ytvideo', $_GET)) echo $_GET['ytvideo']; ?&gt;\" required \/&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/p&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;p&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"submit\" name=\"submit\" value=\"Submit\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/p&gt;\n&lt;\/form&gt;<\/code><\/pre>\n<h3>Obtenez des balises vid\u00e9o YouTube \u00e0 l&rsquo;aide de l&rsquo;API YouTube<\/h3>\n<p>Comme mentionn\u00e9 pr\u00e9c\u00e9demment, YouTube prend en charge diff\u00e9rents types d&rsquo;URL. Nous devons examiner les diff\u00e9rents formats d&rsquo;URL et en extraire l&rsquo;identifiant vid\u00e9o.<\/p>\n<p>\u00c9crivons la fonction qui extrait l&rsquo;identifiant de la vid\u00e9o \u00e0 l&rsquo;aide de l&rsquo;expression r\u00e9guli\u00e8re \u00e0 partir d&rsquo;un format d&rsquo;URL vid\u00e9o YouTube pris en charge.<\/p>\n<pre><code>function extractVideoID($url){\n\u00a0\u00a0\u00a0\u00a0$regExp = \"\/^.*((youtu.be\/)|(v\/)|(\/u\/w\/)|(embed\/)|(watch?))??v?=?([^#&amp;?]*).*\/\";\n\u00a0\u00a0\u00a0\u00a0preg_match($regExp, $url, $video);\n\u00a0\u00a0\u00a0\u00a0return $video[7];\n}<\/code><\/pre>\n<p>Ensuite, \u00e9crivez une m\u00e9thode qui donnera un appel API et traitera la r\u00e9ponse. Cette r\u00e9ponse contiendrait les balises, alors renvoyez-la \u00e0 partir de la m\u00eame m\u00e9thode.<\/p>\n<pre><code>function getYTTags($api_url = '') {\n\u00a0\u00a0\u00a0\u00a0$ch = curl_init();\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_URL, $api_url);\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);\n\u00a0\u00a0\u00a0\u00a0$response = curl_exec($ch);\n\u00a0\u00a0\u00a0\u00a0$arr_result = json_decode($response);\n\u00a0\u00a0\u00a0\u00a0if (isset($arr_result-&gt;items) &amp;&amp; isset($arr_result-&gt;items[0]-&gt;snippet-&gt;tags)) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0return $arr_result-&gt;items[0]-&gt;snippet-&gt;tags;\n\u00a0\u00a0\u00a0\u00a0} elseif (isset($arr_result-&gt;error)) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0die(\"No video tags found.\");\n\u00a0\u00a0\u00a0\u00a0}\n}<\/code><\/pre>\n<p>Lorsqu&rsquo;un utilisateur entre une URL de vid\u00e9o YouTube valide, nous devons appeler la <code>getYTTags<\/code>fonction et cr\u00e9er une variable qui contient une liste de balises vid\u00e9o.<\/p>\n<pre><code>$api_key = 'YOUR_API_KEY';\n$arr_tags = array();\nif (array_key_exists('ytvideo', $_GET)) {\n\u00a0\u00a0\u00a0\u00a0extract($_GET);\n\u00a0\u00a0\u00a0\u00a0$video_id = extractVideoID($ytvideo);\n\u00a0\u00a0\u00a0\u00a0$api_url = \"https:\/\/www.googleapis.com\/youtube\/v3\/videos?part=snippet&amp;id=$video_id&amp;type=video&amp;key=$api_key\";\n\u00a0\u00a0\u00a0\u00a0$arr_tags = getYTTags($api_url);\n}<\/code><\/pre>\n<p>Assurez-vous de remplacer les espaces r\u00e9serv\u00e9s par votre cl\u00e9 API r\u00e9elle. Enfin, affichez la liste des balises au format HTML.<\/p>\n<pre><code>if (!empty($arr_tags)) {\n\u00a0\u00a0\u00a0\u00a0echo \"&lt;ul&gt;\";\n\u00a0\u00a0\u00a0\u00a0foreach ($arr_tags as $tag) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0echo \"&lt;li&gt;$tag&lt;\/li&gt;\";\n\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0echo \"&lt;\/ul&gt;\";\n}<\/code><\/pre>\n<h3>Code final<\/h3>\n<p>Nous avons \u00e9crit le code en morceaux. Vous trouverez ci-dessous le code final que vous pouvez copier et utiliser dans votre application.<\/p>\n<pre><code>&lt;?php\n$api_key = 'YOUR_API_KEY';\n\u00a0\u00a0\nfunction getYTTags($api_url = '') {\n\u00a0\u00a0\u00a0\u00a0$ch = curl_init();\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_URL, $api_url);\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);\n\u00a0\u00a0\u00a0\u00a0$response = curl_exec($ch);\n\u00a0\u00a0\u00a0\u00a0$arr_result = json_decode($response);\n\u00a0\u00a0\u00a0\u00a0if (isset($arr_result-&gt;items) &amp;&amp; isset($arr_result-&gt;items[0]-&gt;snippet-&gt;tags)) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0return $arr_result-&gt;items[0]-&gt;snippet-&gt;tags;\n\u00a0\u00a0\u00a0\u00a0} elseif (isset($arr_result-&gt;error)) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0die(\"No video tags found.\");\n\u00a0\u00a0\u00a0\u00a0}\n}\n\u00a0\u00a0\nfunction extractVideoID($url){\n\u00a0\u00a0\u00a0\u00a0$regExp = \"\/^.*((youtu.be\/)|(v\/)|(\/u\/w\/)|(embed\/)|(watch?))??v?=?([^#&amp;?]*).*\/\";\n\u00a0\u00a0\u00a0\u00a0preg_match($regExp, $url, $video);\n\u00a0\u00a0\u00a0\u00a0return $video[7];\n}\n\u00a0\u00a0\n$arr_tags = array();\nif (array_key_exists('ytvideo', $_GET)) {\n\u00a0\u00a0\u00a0\u00a0extract($_GET);\n\u00a0\u00a0\u00a0\u00a0$video_id = extractVideoID($ytvideo);\n\u00a0\u00a0\u00a0\u00a0$api_url = \"https:\/\/www.googleapis.com\/youtube\/v3\/videos?part=snippet&amp;id=$video_id&amp;type=video&amp;key=$api_key\";\n\u00a0\u00a0\u00a0\u00a0$arr_tags = getYTTags($api_url);\n}\n?&gt;\n\u00a0\u00a0\n&lt;form method=\"get\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;p&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"text\" name=\"ytvideo\" placeholder=\"Enter YouTube Video URL\" value=\"&lt;?php if (array_key_exists('ytvideo', $_GET)) echo $_GET['ytvideo']; ?&gt;\" required \/&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/p&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;p&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"submit\" name=\"submit\" value=\"Submit\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/p&gt;\n&lt;\/form&gt;\n\u00a0\u00a0\n&lt;?php\nif (!empty($arr_tags)) {\n\u00a0\u00a0\u00a0\u00a0echo \"&lt;ul&gt;\";\n\u00a0\u00a0\u00a0\u00a0foreach ($arr_tags as $tag) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0echo \"&lt;li&gt;$tag&lt;\/li&gt;\";\n\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0echo \"&lt;\/ul&gt;\";\n}<\/code><\/pre>\n<p>Il s&rsquo;agit d&rsquo;obtenir des balises vid\u00e9o YouTube \u00e0 l&rsquo;aide de l&rsquo;API YouTube et de PHP. S&rsquo;il vous pla\u00eet partager vos pens\u00e9es et suggestions dans la section commentaires ci-dessous.<\/p>\n<h4>Articles Li\u00e9s<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/comment-utiliser-l-api-youtube-pour-telecharger-une-video-sur-la-chaine-youtube\/\" title=\"Comment utiliser l&#039;API YouTube pour t\u00e9l\u00e9charger une vid\u00e9o sur la cha\u00eene YouTube\">Comment utiliser l&rsquo;API YouTube pour t\u00e9l\u00e9charger une vid\u00e9o sur la cha\u00eene YouTube<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/api-youtube-comment-obtenir-la-liste-des-videos-youtube-de-votre-chaine\/\" title=\"API YouTube - Comment obtenir la liste des vid\u00e9os YouTube de votre cha\u00eene\">API YouTube &#8211; Comment obtenir la liste des vid\u00e9os YouTube de votre cha\u00eene<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/obtenez-une-liste-de-videos-youtube-par-mots-cles-a-l-aide-de-l-api-de-recherche-youtube\/\" title=\"Comment obtenir une liste de vid\u00e9os YouTube par mots-cl\u00e9s \u00e0 l&#039;aide de l&#039;API de recherche YouTube\">Comment obtenir une liste de vid\u00e9os YouTube par mots-cl\u00e9s \u00e0 l&rsquo;aide de l&rsquo;API de recherche YouTube<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Source d&rsquo;enregistrement:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Les balises vid\u00e9o YouTube jouent un r\u00f4le important pour obtenir plus de vues pour votre vid\u00e9o. Dans cet article, nous vous montrons comment obtenir des tags sur n&rsquo;importe quelle vid\u00e9o YouYube<\/p>\n","protected":false},"author":1,"featured_media":21608,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[273],"tags":[844],"class_list":["post-26026","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-4","tag-affiai-fr"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/26026","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/comments?post=26026"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/26026\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media\/21608"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media?parent=26026"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/categories?post=26026"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/tags?post=26026"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}