So erhalten Sie Miniaturansichten von YouTube-, Vimeo- und Dailymotion-Videos
Möchten Sie die Miniaturansichten der YouTube-, Vimeo- und Dailymotion-Videos abrufen? Diese 3 sind die beliebtesten Video-Sharing-Websites im Internet. Auf jeder dieser Plattformen können Benutzer das Video-Thumbnail ihrer Videos abrufen. In diesem Artikel erfahren Sie, wie Sie das Thumbnail mithilfe der Video-URL dieser Plattformen abrufen.
Wenn Sie eine Videogalerie auf den Websites einbinden, sollten Sie die Video-Thumbnails anzeigen. Und dann, wenn Sie auf das Thumbnail klicken, sollte ein zugehöriges Video abgespielt werden. Das Einbetten von Videos mit einem iframe-Tag wird nicht empfohlen. Es nimmt viel Bandbreite eines Servers in Anspruch und erhöht die Seitengröße.
Ich werde einen Code schreiben, der das Thumbnail des Videos über eine Video-URL abruft. Wenn Sie auf diese Miniaturansichten klicken, können Sie Ihre Videos mit der Fancybox oder anderen benutzerdefinierten Lösungen abspielen, die Sie bevorzugen.
Sehen wir uns jedoch nacheinander an, wie Sie Miniaturansichten von YouTube-, Vimeo- und Dailymotion-Videos erhalten.
Thumbnail von YouTube-Video-URL abrufen
Für unser Tutorial gehe ich davon aus, dass Sie die Video-URL übergeben, um die Miniaturansicht eines Videos zu erhalten. Im Fall von YouTube stehen mehrere Arten gültiger URLs zur Verfügung. Unten sind die gültigen URLs von YouTube-Videos:
- https://youtu.be/VIDEO_ID
- https://www.youtube.com/embed/VIDEO_ID
- https://www.youtube.com/watch?v=VIDEO_ID
Die folgende Methode extrahiert die Video-ID aus einem der oben genannten URL-Formate.
<?php
function extractVideoID($url){
$regExp = "/^.*((youtu.be/)|(v/)|(/u/w/)|(embed/)|(watch?))??v?=?([^#&?]*).*/";
preg_match($regExp, $url, $video);
return $video[7];
}
?>
Nachdem Sie die Video-ID aus der URL extrahiert haben, können Sie mit der folgenden Methode ganz einfach eine Miniaturansicht des Videos abrufen:
<?php
function getYouTubeThumbnailImage($video_id) {
return "//i3.ytimg.com/vi/$video_id/hqdefault.jpg";
}
?>
Hier holen wir das Standard-Thumbnail mit hqdefault.jpg
. Man kann verschiedene Werte wie übergeben 0.jpg
, 1.jpg
um unterschiedliche Thumbnail-Größen zu erhalten.
Unser endgültiger Code zum Abrufen der Miniaturansicht von der YouTube-Video-URL lautet also:
<?php
function extractVideoID($url){
$regExp = "/^.*((youtu.be/)|(v/)|(/u/w/)|(embed/)|(watch?))??v?=?([^#&?]*).*/";
preg_match($regExp, $url, $video);
return $video[7];
}
function getYouTubeThumbnailImage($video_id) {
return "https://i3.ytimg.com/vi/$video_id/hqdefault.jpg"; //pass 0,1,2,3 for different sizes like 0.jpg, 1.jpg
}
$video_url = 'YOUTUBE_VIDEO_URL';
$video_id = extractVideoID($video_url);
$thumbnail = getYouTubeThumbnailImage($video_id);
echo "<img src='$thumbnail' />";
?>
Thumbnail von Vimeo- und Dailymotion-Videos abrufen
Auf der Suche nach einer Lösung zum Extrahieren der Video-ID aus Vimeo- und Dailymotion-Video-URLs bin ich auf diese Ressource gestoßen. Ich habe ihre Methode verwendet, um die Video-ID aus den Video-URLs von Vimeo und Dailymotion zu extrahieren. Diese Methode unterstützt alle gültigen URL-Formate von Vimeo- und Dailymotion-Videos.
Beim Abrufen von Miniaturansichten von Vimeo-Videos sieht der Code wie folgt aus:
<?php
function getVimeoId($url)
{
if (preg_match('#(?:https?://)?(?:www.)?(?:player.)?vimeo.com/(?:[a-z]*/)*([0-9]{6,11})[?]?.*#', $url, $m)) {
return $m[1];
}
return false;
}
function getVimeoThumb($id)
{
$arr_vimeo = unserialize(file_get_contents("https://vimeo.com/api/v2/video/$id.php"));
return $arr_vimeo[0]['thumbnail_small']; // returns small thumbnail
// return $arr_vimeo[0]['thumbnail_medium']; // returns medium thumbnail
// return $arr_vimeo[0]['thumbnail_large']; // returns large thumbnail
}
$video_url = 'VIMEO_VIDEO_URL';
$video_id = getVimeoId($video_url);
$thumbnail = getVimeoThumb($video_id);
echo "<img src='$thumbnail' />";
?>
Für Vimeo-Videos können wir 3 Werte wie thumbnail_small, thumbnail_medium, thumbnail_large verwenden, um kleine, mittlere bzw. große Miniaturansichten zu erhalten.
Schließlich lautet der Code zum Abrufen der Miniaturansicht des Dailymotion-Videos wie folgt.
<?php
function getDailyMotionId($url)
{
if (preg_match('!^.+dailymotion.com/(video|hub)/([^_]+)[^#]*(#video=([^_&]+))?|(dai.ly/([^_]+))!', $url, $m)) {
if (isset($m[6])) {
return $m[6];
}
if (isset($m[4])) {
return $m[4];
}
return $m[2];
}
return false;
}
function getDailymotionThumb($id) {
$thumbnail_large_url = 'https://api.dailymotion.com/video/'.$id.'?fields=thumbnail_360_url'; //pass thumbnail_360_url, thumbnail_480_url, thumbnail_720_url, etc. for different sizes
$json_thumbnail = file_get_contents($thumbnail_large_url);
$arr_dailymotion = json_decode($json_thumbnail, TRUE);
$thumb = $arr_dailymotion['thumbnail_360_url'];
return $thumb;
}
$video_url = 'DAILYMOTION_VIDEO_URL';
$video_id = getDailyMotionId($video_url);
$thumbnail = getDailymotionThumb($video_id);
echo "<img src='$thumbnail' />";
?>
Ich hoffe, Sie verstehen, wie Sie das Miniaturbild von YouTube-, Vimeo- und Dailymotion-Videos abrufen können. Wenn Sie eine andere Methode verwenden, um dies zu erreichen, teilen Sie mir dies bitte im Kommentarbereich unten mit.
Zum Thema passende Artikel
- Erhalten Sie eine YouTube-Videoliste nach Schlüsselwörtern mit der YouTube-Such-API und JavaScript
- YouTube API – So erhalten Sie eine Liste der YouTube-Videos Ihres Kanals
- So verwenden Sie die YouTube-API zum Hochladen von Videos auf dem YouTube-Kanal