✅ Nowości, motywy, wtyczki WEB i WordPress. Tutaj dzielimy się wskazówkami i najlepszymi rozwiązaniami dla stron internetowych.

Jak uzyskać tagi wideo YouTube za pomocą interfejsu API YouTube

15

Ostatnio pracowałem nad projektem, w którym nasz klient chce zdobyć tagi filmów z YouTube. Prowadzą swój kanał YouTube i chcieli prostego narzędzia do pobierania tagów dowolnego filmu z YouTube za pomocą adresu URL filmu. W tym artykule pokażę, jak uzyskać tagi wideo YouTube za pomocą interfejsu API YouTube.

Korzystając z tego narzędzia, można uzyskać tagi dowolnego filmu z YouTube, podając poprawny adres URL filmu. Może to pomóc YouTuberom przeglądać tagi używane do ich własnych/konkurujących filmów. Doda korzyści, aby znaleźć odpowiednie tagi dla ich filmów.

Poniżej znajdują się możliwe formaty adresów URL dowolnego filmu na YouTube. Musisz użyć adresu URL pasującego do dowolnego z powyższych formatów.

Pierwsze kroki

Aby rozpocząć, musisz najpierw uzyskać klucz API z konta Konsoli Google. Ten klucz API jest niezbędny podczas interakcji z interfejsami API YouTube. Bez tego klucza YouTube traktuje wszystkie przychodzące wywołania API jako nieautoryzowane.

Poniżej znajdują się kroki, aby pobrać klucz API.

  • Przejdź do Konsoli programisty Google https://console.developers.google.com.
  • Utwórz nowy projekt. Opcjonalnie możesz również wybrać istniejący projekt.
  • Nadaj nazwę swojemu projektowi. Konsola Google utworzy dla Ciebie unikalny identyfikator projektu.
  • Twój nowo utworzony projekt pojawi się na górze lewego paska bocznego.
  • Kliknij Biblioteka z lewego menu. Zobaczysz listę interfejsów Google API. Włącz interfejs API danych YouTube.
  • Następnie z lewego menu kliknij Poświadczenia. Wybierz klucz API w obszarze Utwórz poświadczenia.
  • Skopiuj ten klucz API.

Jak uzyskać tagi wideo YouTube za pomocą interfejsu API YouTube

Następnie utwórz prosty formularz, w którym możesz dodać adres URL wideo YouTube i wysłać go do dalszego przetwarzania.

<form method="get">     <p>         <input type="text" name="ytvideo" placeholder="Enter YouTube Video URL" value="<?php if (array_key_exists('ytvideo', $_GET)) echo $_GET['ytvideo']; ?>" required />     </p>     <p>         <input type="submit" name="submit" value="Submit">     </p> </form>

Pobierz tagi wideo YouTube za pomocą interfejsu API YouTube

Jak wspomniano wcześniej, YouTube obsługuje różne typy adresów URL. Musimy przyjrzeć się różnym formatom adresów URL i wyodrębnić z nich identyfikator wideo.

Napiszmy funkcję, która wyodrębnia identyfikator wideo za pomocą wyrażenia regularnego z obsługiwanego formatu adresu URL wideo YouTube.

function extractVideoID($url){     $regExp = "/^.*((youtu.be/)|(v/)|(/u/w/)|(embed/)|(watch?))??v?=?([^#&?]*).*/";     preg_match($regExp, $url, $video);     return $video[7]; }

Następnie napisz metodę, która wywoła wywołanie API i przetworzy odpowiedź. Ta odpowiedź zawierałaby tagi, więc zwróć ją tą samą metodą.

function getYTTags($api_url = '') {     $ch = curl_init();     curl_setopt($ch, CURLOPT_URL, $api_url);     curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);     $response = curl_exec($ch);     $arr_result = json_decode($response);     if (isset($arr_result->items) && isset($arr_result->items[0]->snippet->tags)) {         return $arr_result->items[0]->snippet->tags;     } elseif (isset($arr_result->error)) {         die("No video tags found.");     } }

Gdy użytkownik wprowadzi prawidłowy adres URL wideo YouTube, musimy wywołać getYTTagsfunkcję i zbudować zmienną zawierającą listę tagów wideo.

$api_key = 'YOUR_API_KEY'; $arr_tags = array(); if (array_key_exists('ytvideo', $_GET)) {     extract($_GET);     $video_id = extractVideoID($ytvideo);     $api_url = "https://www.googleapis.com/youtube/v3/videos?part=snippet&id=$video_id&type=video&key=$api_key";     $arr_tags = getYTTags($api_url); }

Pamiętaj, aby zastąpić symbole zastępcze rzeczywistym kluczem API. Na koniec wyświetl listę tagów w formacie HTML.

if (!empty($arr_tags)) {     echo "<ul>";     foreach ($arr_tags as $tag) {         echo "<li>$tag</li>";     }     echo "</ul>"; }

Kod końcowy

Napisaliśmy kod w kawałkach. Poniżej znajduje się ostateczny kod, który możesz skopiować i wykorzystać w swojej aplikacji.

<?php $api_key = 'YOUR_API_KEY';    function getYTTags($api_url = '') {     $ch = curl_init();     curl_setopt($ch, CURLOPT_URL, $api_url);     curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);     $response = curl_exec($ch);     $arr_result = json_decode($response);     if (isset($arr_result->items) && isset($arr_result->items[0]->snippet->tags)) {         return $arr_result->items[0]->snippet->tags;     } elseif (isset($arr_result->error)) {         die("No video tags found.");     } }    function extractVideoID($url){     $regExp = "/^.*((youtu.be/)|(v/)|(/u/w/)|(embed/)|(watch?))??v?=?([^#&?]*).*/";     preg_match($regExp, $url, $video);     return $video[7]; }    $arr_tags = array(); if (array_key_exists('ytvideo', $_GET)) {     extract($_GET);     $video_id = extractVideoID($ytvideo);     $api_url = "https://www.googleapis.com/youtube/v3/videos?part=snippet&id=$video_id&type=video&key=$api_key";     $arr_tags = getYTTags($api_url); } ?>    <form method="get">     <p>         <input type="text" name="ytvideo" placeholder="Enter YouTube Video URL" value="<?php if (array_key_exists('ytvideo', $_GET)) echo $_GET['ytvideo']; ?>" required />     </p>     <p>         <input type="submit" name="submit" value="Submit">     </p> </form>    <?php if (!empty($arr_tags)) {     echo "<ul>";     foreach ($arr_tags as $tag) {         echo "<li>$tag</li>";     }     echo "</ul>"; }

Wszystko sprowadza się do uzyskiwania tagów wideo YouTube za pomocą interfejsu API YouTube i PHP. Podziel się swoimi przemyśleniami i sugestiami w sekcji komentarzy poniżej.

Powiązane artykuły

Źródło nagrywania: artisansweb.net

Ta strona korzysta z plików cookie, aby poprawić Twoje wrażenia. Zakładamy, że nie masz nic przeciwko, ale możesz zrezygnować, jeśli chcesz. Akceptuję Więcej szczegółów