Mon site permet aux utilisateurs de télécharger les codes vidéo YouTube. J'essaie de faire une liste de lecture en montrant les vignettes des vidéos téléchargées et de lire la vidéo correspondante après avoir cliqué sur une vignette spécifique.
J'aimerais connaître la méthode d'obtenir la légende et les images vignettes de ces vidéos qui ont été téléchargées Utilisation du code incorporé de YouTube? P>
Edit: P>
Pour faire une question plus claire, mes utilisateurs téléchargent le code comme celui indiqué ci-dessous: P>
<object width="640" height="385"><param name="movie" value="http://www.youtube.com/v/-L8DFfSJbqU&hl=en_US&fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/-L8DFfSJbqU&hl=en_US&fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="640" height="385"></embed></object>
6 Réponses :
Si vous avez votre ID vidéo, vous pouvez utiliser des liens décrits dans Cet article
Le format de lien est suivant: P>
http://img.youtube.com/vi/-L8DFfSJbqU/default.jpg
Comment l'extraire en utilisant PHP? toute suggestion
Vous pouvez utiliser une expression régulière, par exemple, c'est une expression régulière qui peut vous aider " youtube.com/v "/a > (. {11}) ". Vous pouvez l'obtenir en utilisant cette fonction PHP.net/Manual/fr/function.Preg -match.php
Thumbnails Vous pouvez charger à partir de l'URL vidéo. P>
URL vidéo p>
http://www.youtube.com/watch?v=XZF0RVQA4MC < / p> blockQuote>
URL miniature p>
http://i1.ytimg.com/vi/xzf0rvqa4mc/default.jpg < / a> p>
http://i2.ytimg.com/vi/xzf0rvqa4mc/default.jpg < / a> p>
http://i3.ytimg.com/vi/xzf0rvqa4mc/default.jpg < / a> p>
http://i4.ytimg.com/vi/xzf0rvqa4mc/default.jpg < / a> p> blockQuote>
Il faut un certain temps pour reproduire des images sur toutes les URL des vignettes (peut-être des serveurs) pour de nouvelles vidéos. P>
S'il n'y a pas de vignette, il renvoie une image avec une caméra (exactement 893 octets). P>
exemple p>
http://i4.ytimg.com/vi/xzf0rvqa4md/default.jpg < / a> p> blockQuote> blockQuote>
mieux avec cette regexp (youtube \ .com \ / (watch \? v =)? (v \ /)? ([\ w \ -] +)) Il peut gérer les deux URL (avec / V / et avec montre? V =) Preg_Match ('/ YOUTUBE \ .COM \ / V \ / ([\ w \ -] +) /', $ code, $ match); echo $ match [3];
Aucun problème. Mais étudiez l'API GDATA pour YouTube. Si vous êtes capable d'analyser la vidéo ID maintenant, vous pouvez chercher plus d'informations (titre, ...).
Ces vignettes peuvent-elles être récupérées sur https au lieu de http?
L'API GDATA pour YouTube Allos Vous devez chercher des informations sur les flux, les utilisateurs, la vidéo, etc. p>
Ce lien décrit la section de la réponse relative aux vignettes: p>
http://code.google.com/apis /youtube/2.0/reference.html#youtube_data_api_tag_media:Thumbnail p>
N'utilisez pas les URL du code HARDCO, car Google peut les modifier à tout moment. Utilisez les API. P>
Il était très utile de savoir que l'API ... Vérifiera-la bientôt aussi
avec API YouTube:
/* Some stuff goes before here to initialize API connection */ /* Then get started: */ $yt = new Zend_Gdata_YouTube() $videoEntry = $yt->getVideoEntry('the0KZLEacs'); //Video-ID $videoThumbnails = $videoEntry->getVideoThumbnails() echo 'Video: ' . $videoEntry->getVideoTitle() . "\n"; echo 'Video ID: ' . $videoEntry->getVideoId() . "\n"; echo 'Updated: ' . $videoEntry->getUpdated() . "\n"; echo 'Description: ' . $videoEntry->getVideoDescription() . "\n"; echo 'Category: ' . $videoEntry->getVideoCategory() . "\n"; echo 'Tags: ' . implode(", ", $videoEntry->getVideoTags()) . "\n"; echo 'Watch page: ' . $videoEntry->getVideoWatchPageUrl() . "\n"; echo 'Flash Player Url: ' . $videoEntry->getFlashPlayerUrl() . "\n"; echo 'Duration: ' . $videoEntry->getVideoDuration() . "\n"; echo 'View count: ' . $videoEntry->getVideoViewCount() . "\n"; echo 'Rating: ' . $videoEntry->getVideoRatingInfo() . "\n"; echo 'Geo Location: ' . $videoEntry->getVideoGeoLocation() . "\n"; echo 'Recorded on: ' . $videoEntry->getVideoRecorded() . "\n";
Comment extraire l'ID vidéo "The0kzleacs" pour l'API de mon code ci-dessus
Facilement Vous pouvez aller sur mon site Web J'ai créé une application à cette fin,
http://shofnee.com/metal_shofnee/apps/youtube_app/youtube_app.php p>
C'est aussi le code que j'ai écrit pour obtenir cette application en direct avec PHP Language P>
<?php //getting and validating the embed code $cde = $_POST['txt_embd']; if(!empty($cde)) { $part_one_cde = explode("/",$cde); $part_2_cde = explode("?",$part_one_cde[4]); $img_1 = "http://img.youtube.com/vi/$part_2_cde[0]/0.jpg"; $img_2 = "http://img.youtube.com/vi/$part_2_cde[0]/1.jpg"; $img_3 = "http://img.youtube.com/vi/$part_2_cde[0]/2.jpg"; echo "Img 1"; echo "<br />"; echo "<img src=\"$img_3\" width=\"100\" height=\"100\" />"; echo"<br /><br />"; echo "Img 2"; echo "<br />"; echo "<img src=\"$img_2\" width=\"150\" height=\"150\" />"; echo"<br /><br />"; echo "Img 3"; echo "<br />"; echo "<img src=\"$img_1\" width=\"200\" height=\"200\" />"; } else { echo "Please put any embed code to get it's pics ..."; } ?>
Vous pouvez essayer de différents types de vidéos YouTube Vignettes à l'aide de ces URL -
pour la vignette de qualité par défaut et de qualité normale: p> pour la haute qualité (HQ ) Thumbnail: P> <img src="http://img.youtube.com/vi/4EvNxWhskf8/hqdefault.jpg" title="YouTube Video" alt="YouTube Video" />
Parfait Thx beaucoup: D