Código de PHP - Utilizar la API de Youtube para obtener el thumbnail, titulo, descripción y tiempo de un vídeo

Imágen de perfil
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Utilizar la API de Youtube para obtener el thumbnail, titulo, descripción y tiempo de un vídeográfica de visualizaciones


PHP

Publicado el 14 de Enero del 2015 por Xve (294 códigos)
10.930 visualizaciones desde el 14 de Enero del 2015
Código que muestra como hacer una llamada a la API de Youtube para obtener la imagen del vídeo, tamaño del mismo, tiempo de reproducción, titulo y descripción.
Muestra como mostrar el thumnail del vídeo con enlace hacia la página de Youtube para ver el vídeo.
También muestra como incrustar el vídeo en nuestra página.

Versión 1.0
estrellaestrellaestrellaestrellaestrella(6)

Publicado el 14 de Enero del 2015gráfica de visualizaciones de la versión: Versión 1.0
10.931 visualizaciones desde el 14 de Enero del 2015
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="utf-8">
    <style>
    .video img {cursor:pointer;}
    </style>
</head>
 
<body>
<?php
# definimos el identificar del vídeo que deseamos mostrar
$video="ApeC2AGENgo";
 
# realizamos la peticion a youtube para obtener en formato json toda la
# información sobre el video
$json_output = file_get_contents("http://gdata.youtube.com/feeds/api/videos/".$video."?v=2&alt=json");
$json = json_decode($json_output, true);
 
# Si deseamos visualizar todos los datos recibidos por json de youtube
#echo "<pre>";
#print_r($json);
#echo "</pre>";
 
# obtenemos los valores necesarios que deseamos
$video_title = $json['entry']['title']['$t'];
$video_description = $json['entry']['media$group']['media$description']['$t'];
$video_width = $json['entry']['media$group']['media$thumbnail'][0]["width"];
$video_height = $json['entry']['media$group']['media$thumbnail'][0]["height"];
$video_image = $json['entry']['media$group']['media$thumbnail'][0]["url"];
$video_time = $json['entry']['media$group']['media$thumbnail'][0]["time"];
 
echo "<div class='video' id=".$video.">";
    echo "<div>";
 
        echo "<h2>Imagen del video con enlace hacia youtube</h2>";
        # hacemos un enlace hacia la pagina de youtube para visualizar el video
        echo "<a href='http://youtu.be/".$video."'>";
 
            # Mostramos la imagen
            echo "<img src='".$video_image."' style='width:".$video_width."px;height:".$video_height."px;'>";
 
            # Si queremos modificar el temaño de la imagen, podemos utilizar
            # esta imagen mas grande que no se vera distorsionada
            echo "<br><br><img src='https://img.youtube.com/vi/".$video."/0.jpg' style='width:219px;height:164px;'>";
        echo "</a>";
 
        # Si deseamos visualizar el video
        echo "<h2>Mostramos el video en nuestra página</h2>";
        echo "<iframe width='307' height='173' src=\"//www.youtube.com/embed/".$video."?showinfo=0&autohide=1\" frameborder=\"0\" allowfullscreen></iframe>";
 
    echo "</div>";
 
    # Mostramos el titulo, tiempo y descripción del video
    echo "<h3>Titulo: ".$video_title."</h3>";
    echo "<p>Tiempo: ".$video_time."</p>";
    echo "<p>".$video_description."</p>";
echo "</div>";
?>
</body>
</html>



Comentarios sobre la versión: Versión 1.0 (6)

TaurusZDK
19 de Enero del 2015
estrellaestrellaestrellaestrellaestrella
wow super extra archi buenisimo!!!!!!!!!!! me avia pasado por la mente poner algo asi en mi web que casualidad que venia de paso x aca y me cae esto del cielo.


Gracias!!!!!!!!!!!!!!!!!!!!!!
Responder
Imágen de perfil
14 de Marzo del 2015
estrellaestrellaestrellaestrellaestrella
Hola,

He llevado el sistema al paradigma MySQL, o sea, la idea es inyectar el código en una base de datos y luego leerla mediante el script.

Veamos:

<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="utf-8">
<style>
.video img {cursor:pointer;}
</style>
</head>

<body>
<div style="width:700px;margin:100px auto">
<?php
require ('includes/connect.php');
//$Categoria = $_GET['Categoria'];
$result=mysql_query("SELECT * FROM videos ORDER BY id DESC",$connect);
$num_rows = mysql_num_rows($result);
if ($num_rows == 0){
echo "En estos momentos no hay Videos";
exit;}
while($row=mysql_fetch_array($result)){
$video= ''.$row['video'].'';


# definimos el identificar del vídeo que deseamos mostrar
//$video="YHKGQnw6Smc";
# realizamos la peticion a youtube para obtener en formato json toda la
# información sobre el video
$json_output = file_get_contents("http://gdata.youtube.com/feeds/api/videos/".$video."?v=2&alt=json");
$json = json_decode($json_output, true);

# Si deseamos visualizar todos los datos recibidos por json de youtube
#echo "<pre>";
#print_r($json);
#echo "</pre>";

# obtenemos los valores necesarios que deseamos
$video_title = $json['entry']['title']['$t'];
$video_description = $json['entry']['media$group']['media$description']['$t'];
$video_width = $json['entry']['media$group']['media$thumbnail'][0]["width"];
$video_height = $json['entry']['media$group']['media$thumbnail'][0]["height"];
$video_image = $json['entry']['media$group']['media$thumbnail'][0]["url"];
$video_time = $json['entry']['media$group']['media$thumbnail'][0]["time"];

echo "<div class='video' id=".$video.">";
echo "<div>";

echo "<h2>Imagen del video con enlace hacia youtube</h2>";
# hacemos un enlace hacia la pagina de youtube para visualizar el video
echo "<a href='http://youtu.be/".$video."'>";

# Mostramos la imagen
//echo "<img src='".$video_image."' style='width:".$video_width."px;height:".$video_height."px;'>";

# Si queremos modificar el temaño de la imagen, podemos utilizar
# esta imagen mas grande que no se vera distorsionada
echo "<br><br><img src='https://img.youtube.com/vi/".$video."/0.jpg' style='width:219px;height:164px;'>";
echo "</a>";

# Si deseamos visualizar el video
echo "<h2>Mostramos el video en nuestra página</h2>";
echo "<iframe width='307' height='173' src=\"//www.youtube.com/embed/".$video."?showinfo=0&autohide=1\" frameborder=\"0\" allowfullscreen></iframe>";

echo "</div>";

# Mostramos el titulo, tiempo y descripción del video
echo "<h3>Titulo: ".$video_title."</h3>";
echo "<p>Tiempo: ".$video_time."</p>";
echo "<p>".$video_description."</p>";
echo "</div>";}
mysql_free_result($result)
?>
</div>
</body>
</html>

***********************

<?php
//conectamos a la base
$connect=mysql_connect("localhost","admin","password");
//Seleccionamos la base
mysql_select_db("test",$connect);
?>

***********

Y acá está la base de datos:

--
-- Estructura de tabla para la tabla `videos`
--

CREATE TABLE IF NOT EXISTS `videos` (
`id` int(10) NOT NULL,
`video` varchar(50) COLLATE utf8_spanish_ci NOT NULL
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci;

--
-- Volcado de datos para la tabla `videos`
--

INSERT INTO `videos` (`id`, `video`) VALUES
(1, 'aqAC0zDH1Ts'),
(2, 'YHKGQnw6Smc'),
(3, 'H3OaBiu5pM8');
Responder
Cristhian
6 de Mayo del 2016
estrellaestrellaestrellaestrellaestrella
Amigo no se puede obtener el titulo o la descripción del vídeo yo utilice la misma clase hace un año y si salia pero ahora ya no sale el titulo me puedes decir por que.
Responder
Jesus
13 de Octubre del 2016
estrellaestrellaestrellaestrellaestrella
Muy interesante pero ya no se puede usar, alguien sabe como hacerlo ahora?
Responder
maycol
11 de Junio del 2017
estrellaestrellaestrellaestrellaestrella
habra una muestra para este 2017 ?
Responder
Rodolfo
6 de Diciembre del 2017
estrellaestrellaestrellaestrellaestrella
Este codigo ya no funciona, buscando en la web encontre este:
<?php
$content = file_get_contents("http://youtube.com/get_video_info?video_id=CLtnbj67YjA");
parse_str($content, $info);
echo $info['title']."<br/>";
echo $info['length_seconds']/60;
?>
Suerte!!.
Responder

Comentar la versión: Versión 1.0

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s3002