Como ver videos con la API de YouTube (II)
Bueno, lo prometido es deuda… seguimos.
Utilizando la API de YouTube. Parte 2.
Tema: Como ver videos con la API de YouTube.
Ocuparemos los mismos requisitos que la primera lección.
Para este procedimiento no ocuparemos la Developer Key y tampoco necesitaremos “loguearnos” en youtube.
Creamos un PHP puede ser vervideo.php
[cc lang="php" tab_size="2" lines="40"]
// Llamamos a la libreria.
require_once ‘Zend/Loader.php’;
Zend_Loader::loadClass(‘Zend_Gdata_YouTube’);
$yt = new Zend_Gdata_YouTube();
[/cc]
Ya esta parte la vimos, llamamos a la librería Zend, cargamos una clase Youtube y creamos el objeto.
[cc lang="php" tab_size="2" lines="40"]
// El ID del video (ya saben las letritas esas de la direccion de youtube)
$IDVideo = ‘MbNH00ZXeLk’;
$NuestroVideo = $yt->getVideoEntry($IDVideo);
[/cc]
Guardamos toda la información del video en $NuestroVideo, ahora vamos a obtener la información y mostrarla.
[cc lang="php" tab_size="2" lines="40"]
//Esta es la direccion flash del video
$direccion = $NuestroVideo->getFlashPlayerUrl();
//Obtenemos mas informacion del video y la mostramos
$Titulo = $NuestroVideo->getVideoTitle();
echo “Titulo: ” . $Titulo . “
“;
echo “Descricion: ” . $NuestroVideo->getVideoDescription() . “
“;
echo “Categoria: ” . $NuestroVideo->getVideoCategory() . “
“;
echo “Tags: ” . implode(“, “, $NuestroVideo->getVideoTags()) . “
“;
echo “Verlo en Youtube: ” . $NuestroVideo->getVideoWatchPageUrl() . “
“;
echo “Duracion del video: ” . $NuestroVideo->getVideoDuration() . “
“;
echo “Visitas: ” . $NuestroVideo->getVideoViewCount() . “
“;
[/cc]
Esta parte se explica por si misma, puedo añadir, que si uno quiere puede guardar la información en variables y después mostrarla, como en el caso de la Url Flash y el Titulo, que yo guardé porque lo voy a utilizar unas 3 veces mas adelante (y no seria correcto llamar a la funcion getFlashPlayerUrl() o getVideoTitle() cada vez)
Ya tenemos toda la información del video, falta mostrarlo
[cc lang="php" tab_size="2" lines="40"]
// Utilizamos el codigo embed que nos facilita youtube y lo adecuamos a nuestro codigo
echo ““. $Titulo . “
“;
[/cc]
Listo, que les pareció…sencillo verdad, la próxima lección veremos como utilizar el Chromeless Player (el reproductor de youtube sin marco y botones).
Descarga | Ejercicio 2









Como ver videos con la API de YouTube (II)…
Segunda parte del curso de como utilizar la API de Youtube. Esta vez como mostrar videos….
[...] Como ver videos con la API de Youtube [...]
Hola,
yo necesito ver los videos privados, trate loguenadome de la forma en tu ejemplo donde se suben los videos y queda:
$yt = new Zend_Gdata_YouTube($httpClient);
$IDVideo = “ID_de_video_privado”;
$NuestroVideo = $yt->getVideoEntry($IDVideo);
pero al poner el ID del video me da error de que no existe, estoy utilizando mi developerKey de la misma cuenta donde tengo el video privado.
el error:
Fatal error: Uncaught exception ‘Zend_Gdata_App_HttpException’ with message ‘Expected response code 200, got 404 Video not found’ in /home/xxx/public_html/yt/Zend/Gdata/App.php:501 Stack trace: #0 /home/xxx/public_html/yt/Zend/Gdata.php(201): Zend_Gdata_App->performHttpRequest(‘GET’, ‘http://gdata.yo…’, Array, NULL, NULL, NULL) #1 /home/xxx/public_html/yt/Zend/Gdata/App.php(610): Zend_Gdata->performHttpRequest(‘GET’, ‘http://gdata.yo…’) #2 /home/xxx/public_html/yt/Zend/Gdata/App.php(541): Zend_Gdata_App->get(‘http://gdata.yo…’) #3 /home/xxx/public_html/yt/Zend/Gdata/App.php(159): Zend_Gdata_App->importUrl(‘http://gdata.yo…’, ‘Zend_Gdata_YouT…’) #4 /home/xxx/public_html/yt/Zend/Gdata.php(169): Zend_Gdata_App->getEntry(‘http://gdata.yo…’, ‘Zend_Gdata_YouT…’) #5 /home/xxx/public_html/yt/Zend/Gdata/YouTube.php(193): Zend_Gdata->getEntry(‘http://gdata.yo…’, ‘Zend_Gdata_YouT…’) #6 /home/xxx/public_html/yt/api_player.php(26): Zend_Gdata_YouTube->getVideoEntry(‘oaDi2D79XPs’) #7 {main} thrown in /home/xxx/public_html/yt/Zend/Gdata/App.php on line 501
Si alguien sabe algo que avise
Saludos.
Muy buenos lo tutoriales, he logrado avanzar bastante con ellos, pero tengo un problema que aun no puedo corregir, estoy recuperando todos los videos subidos por mi usuario para mostrarlos luego con shadowbox y todo va a la perfección, pero el problema es que la lista de videos no se actualiza, es decir si agrego un video nuevo aparece despues de un rato cuando youtube ya lo autorizo, y esa parte esta bien, pero si por ejemplo voy a mi youtube y le cambio el nombre o la descripcion entonces en mi pagina no se actualiza sigue apareciendo la anterior descripcion, y lo peor de todo es que cuando borro algun video de youtube en mi pagina sigue apareciendo logicamente al reproducirlo me dice que el video ya no existe.
Ahora le muestro como lo estoy haciendo para que si pueden me comenten mi error por favor, ya que la verdad estos tutoriales son lo mas decente de informacion sobre la api de youtube que he encontrado todo lo demas son copias y mal hechas de la documentacion oficial que sinceramente deja mucho que desear en sus ejemplos.
Este es el codigo de lo anterior descrito:
< ?
Zend_Loader::loadClass('Zend_Gdata_YouTube');
$yt = new Zend_Gdata_YouTube();
$Videos = $yt->getUserUploads('MIUSUARIO');
foreach ($Videos as $Data) {
echo "";
$videoThumbnails =$Data->getVideoThumbnails();
echo "";
echo "";
// ESTA PARTE ES SOLO PARA LIMITAR LOS THUMBNAILS DEL VIDEO, PUEDO CAMBIAR LA VARIABLE $CUANTO Y ESA SERA LA CANTIDAD DE THUMBNAILS QUE MUESTRE
$cuantos=0;
foreach($videoThumbnails as $videoThumbnail) {
$cuantos++;
if($cuantos <= 3) {
echo " ";
}
}
// AQUI VA EL ENLACE A LA REPRODUCCION DE LA IMAGEN CON ALGUNOS PARAMETROS Y EL REL PARA QUE LO ABRA SHADOWBOX.
echo "getFlashPlayerUrl().";autoplay=1&showinfo=0&showsearch=0&rel=0&border=1&color1=0x176726&color2=0x176726&lang=es' rel='shadowbox;width=800;height=672' title='".$Data->getVideoTitle()."'>Reproducir";
//AQUI OBTENGO Y MUESTRO LAS DEMAS OPCIONES DEL VIDEO TITULO, DESCRIPCION Y DURACION
echo "";
echo "Título: ".$Data->getVideoTitle() . "";
echo "Descripción: ".$Data->getVideoDescription() . "";
echo "Duración: ".$Data->getVideoDuration() . " Segundos";
echo "";
}
?>
Esto me muestra todos los videos subidos en con 3 thumbnails y una imagen y enlace para reproducirlo.
pero mi problema como decia es que no me actualiza cuando borro o edito un video.
Agradecere infinitamente su ayuda.
En el anterior comentario que expuse mi problema parece ser que algunas etiquetas html fueron interpretadas, por lo que no se ve completo el codigo, pero lo referente a la API si aparece, si no se logra entender el codigo por favor indiquenlo para subir en un archivo de texto plano.
Saludos
jejejeje, bueno solo como comentario informativo, el codigo que expuse antes funciona a la perfeccion, despues del dia entero de busqueda y leerme la documentacion de la API y mil sitios mas en ingles, lei en una pregunta en el centro de ayuda de youtube que los videos y thumbnails pueden tardar hasta mas de 24 horas en borrarse aunque ya no aparezcan en mi lista de videos subidos.
Gracias de cualquier manera.
Saludos
hola jhonyy como va? estoy tratando de hacer exactamente lo mismo y me tira error. , he modificado y agregado data de coneccion etc. dimo no tienes un link de descarga de lo que esta realizando? lo espero con ansios. saludos.
esteban by lop
Hay alguna manera de saber el estado del vide? por ejemplo si está pendiente de aceptar o esta rechazado por estar duplicado…
gracias
Los geeks opinan!
Twitteando
Publicidad
Categorías
Entradas recientes
Twitter
RSS
Nube de conocimiento
Lista de enlaces
Con mucho orgullo
Categorías
lo más comentado
avenidanet wazzup!!
Developer and designer
While(42)
{
++geek;
}
echo "42 72 69 61 6e";