Foros del Web » Programando para Internet » PHP »

Subida de videos a YouTube con su API

Estas en el tema de Subida de videos a YouTube con su API en el foro de PHP en Foros del Web. Hola, llevo bastante tiempo intentando realizar estas subidas pero hasta ahora no lo he conseguido. He usado el codigo de un tema que ya crearon ...
  #1 (permalink)  
Antiguo 22/12/2012, 18:20
Avatar de dmm84  
Fecha de Ingreso: marzo-2011
Mensajes: 164
Antigüedad: 13 años, 1 mes
Puntos: 13
Subida de videos a YouTube con su API

Hola,
llevo bastante tiempo intentando realizar estas subidas pero hasta ahora no lo he conseguido. He usado el codigo de un tema que ya crearon en su momento (http://www.forosdelweb.com/f18/subir...mi-web-929998/) para ir probando a ver si funciona. No sabia si continuar ese tema o crear uno nuevo, aunque al final lo he creado.

Mi codigo es el siguiente, con el error solucionado que tenia el usuario de ese tema:

Código PHP:
Ver original
  1. require_once 'Zend/Loader.php'; // the Zend dir must be in your include_path
  2. Zend_Loader::loadClass('Zend_Gdata_YouTube');
  3. $yt = new Zend_Gdata_YouTube();
  4.  
  5. Zend_Loader::loadClass('Zend_Gdata_AuthSub');
  6. Zend_Loader::loadClass('Zend_Gdata_ClientLogin');
  7.  
  8. // autenticacion
  9. $authenticationURL= 'https://www.google.com/youtube/accounts/ClientLogin';
  10. $httpClient = Zend_Gdata_ClientLogin::getHttpClient(
  11. $username = '[email protected]',
  12. $password = 'micontraseña',
  13. $service = 'youtube',
  14. $client = null,
  15. $source = 'miaplicacion', // a short string identifying your application
  16. $loginToken = null,
  17. $loginCaptcha = null,
  18. $authenticationURL);
  19.  
  20. $myDeveloperKey = 'LaClaveDeDeveloper'; // Esta clave la he obtenido de: http://code.google.com/apis/youtube/dashboard
  21.  
  22. $httpClient->setHeaders('X-GData-Key', "key=${myDeveloperKey}");
  23. $yt = new Zend_Gdata_YouTube($httpClient);
  24.  
  25. // subir video
  26. $yt = new Zend_Gdata_YouTube($httpClient);
  27. // create a new Zend_Gdata_YouTube_VideoEntry object
  28. $myVideoEntry = new Zend_Gdata_YouTube_VideoEntry();
  29.  
  30. // create a new Zend_Gdata_App_MediaFileSource object
  31. $filesource = $yt->newMediaFileSource('file.mov');
  32. $filesource->setContentType('video/quicktime');
  33. // set slug header
  34. $filesource->setSlug('file.mov');
  35.  
  36. // add the filesource to the video entry
  37. $myVideoEntry->setMediaSource($filesource);
  38.  
  39. // create a new Zend_Gdata_YouTube_MediaGroup object
  40. $mediaGroup = $yt->newMediaGroup();
  41. $mediaGroup->title = $yt->newMediaTitle()->setText('My Test Movie');
  42. $mediaGroup->description = $yt->newMediaDescription()->setText('My description');
  43.  
  44. // the category must be a valid YouTube category
  45. // optionally set some developer tags (see Searching by Developer Tags for more details)
  46. $mediaGroup->category = array(
  47.     $yt->newMediaCategory()->setText('Autos')->setScheme('http://gdata.youtube.com/schemas/2007/categories.cat'),
  48.     $yt->newMediaCategory()->setText('mydevelopertag')->setScheme('http://gdata.youtube.com/schemas/2007/developertags.cat'),
  49.     $yt->newMediaCategory()->setText('anotherdevelopertag')->setScheme('http://gdata.youtube.com/schemas/2007/developertags.cat')
  50. );
  51.  
  52. // set keywords
  53. $myVideoEntry->SetVideoTags('cars, funny');
  54.  
  55. // set video location
  56. $yt->registerPackage('Zend_Gdata_Geo');
  57. $yt->registerPackage('Zend_Gdata_Geo_Extension');
  58. $where = $yt->newGeoRssWhere();
  59. $position = $yt->newGmlPos('37.0 -122.0');
  60. $where->point = $yt->newGmlPoint($position);
  61. $entry->setWhere($where);
  62.  
  63. //upload URL for the currently authenticated user
  64. $uploadUrl = 'http://uploads.gdata.youtube.com/feeds/users/default/uploads';
  65.  
  66. try {
  67.     $newEntry = $yt->insertEntry($myVideoEntry, $uploadUrl, 'Zend_Gdata_YouTube_VideoEntry');
  68. } catch (Zend_Gdata_App_Exception $e) {
  69.     echo $e->getMessage();
  70. }

Y cuando intento usarlo me da el siguiente error:

Fatal error: Uncaught exception 'Zend_Gdata_App_AuthException' with message 'Authentication with Google failed. Reason: BadAuthentication' in /home/miapp/public_html/Zend/Gdata/ClientLogin.php:175 Stack trace: #0 /home/miapp/public_html/pruebas.php(19): Zend_Gdata_ClientLogin::getHttpClient('miusuario@g ma...', 'micontraseña', 'youtube', NULL, 'miaplicacion', NULL, NULL, 'https://www.goo...') #1 {main} thrown in /home/miapp/public_html/Zend/Gdata/ClientLogin.php on line 175

He probado mil formas y aun no se donde me equivoco. A ver si alguien me ilumina.
__________________
Mas vale un codigo que mil palabras
  #2 (permalink)  
Antiguo 23/12/2012, 00:43
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Respuesta: Subida de videos a YouTube con su API

Primero prueba esta conexión pa ver como te va:
Código PHP:
<?php
if($mbox = @imap_open("{imap.gmail.com:993/imap/ssl}INBOX""cuenta""clave"OP_HALFOPEN))
{
echo
" conexion exitosa " 
}
else 
{
echo 
" la conexión fallo " 
}
exit;
?>
  #3 (permalink)  
Antiguo 23/12/2012, 05:11
Avatar de dmm84  
Fecha de Ingreso: marzo-2011
Mensajes: 164
Antigüedad: 13 años, 1 mes
Puntos: 13
Respuesta: Subida de videos a YouTube con su API

Pues parece que no conecta. ¿Entonces debería consultar a mi hosting o es algo que haya que programar?
__________________
Mas vale un codigo que mil palabras
  #4 (permalink)  
Antiguo 23/12/2012, 07:43
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Respuesta: Subida de videos a YouTube con su API

Si el "programita" que te he compartido no conecta es ERROR DE CONFIG del server, no del código.

1- Ya lo probaste en LOCAL ?
2- Que devuelve tu PHPINFO en el valor disable_functions ???
  #5 (permalink)  
Antiguo 23/12/2012, 08:02
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Subida de videos a YouTube con su API

Te dejo una referencia para que cubras los puntos básicos, pero ten en cuenta que estas utilizando algo que esta deprecated.

http://apiblog.youtube.com/2011/03/c...ogin-fail.html

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #6 (permalink)  
Antiguo 23/12/2012, 08:23
Avatar de dmm84  
Fecha de Ingreso: marzo-2011
Mensajes: 164
Antigüedad: 13 años, 1 mes
Puntos: 13
Respuesta: Subida de videos a YouTube con su API

Anarko:

Lo habia probado hasta ahora directamente en el servidor, ya que es donde me interesa que este disponible. No obstante lo he probado tambien en local tanto tu pequeño test como el codigo de prueba que pongo más arriba. Sorprendentemente tu codigo no me devuelve nada, y el codigo de prueba que tengo me da un error diferente:

Fatal error: Uncaught exception 'Zend_Gdata_App_HttpException' with message 'Unable to Connect to ssl://www.google.com:443. Error #24: Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP?' in C:\AppServ\www\puenting\Zend\Gdata\ClientLogin.php :141 Stack trace: #0 C:\AppServ\www\miapp\pruebas.php(19): Zend_Gdata_ClientLogin::getHttpClient('miusuario', 'micontraseña', 'youtube', NULL, 'miaplicacion', NULL, NULL, 'https://www.goo...') #1 {main} thrown in C:\AppServ\www\miapp\Zend\Gdata\ClientLogin.php on line 141

Por el error creo que no tendré configurado el php.ini para hacer conexiones seguras, pero no se muy bien como configurar eso o qué es lo que tengo que buscar. El phpinfo, en el apartado que me indicas tanto en local como en el servidor me devuelve "no value"
__________________
Mas vale un codigo que mil palabras
  #7 (permalink)  
Antiguo 23/12/2012, 08:25
Avatar de dmm84  
Fecha de Ingreso: marzo-2011
Mensajes: 164
Antigüedad: 13 años, 1 mes
Puntos: 13
Respuesta: Subida de videos a YouTube con su API

masterpuppet:

Sí, ya había visto esa web pero la descarte porque pensaba que no venía mi problema. La volveré a leer más detenidamente.
__________________
Mas vale un codigo que mil palabras
  #8 (permalink)  
Antiguo 23/12/2012, 09:22
Avatar de jcxnet  
Fecha de Ingreso: octubre-2005
Ubicación: Perú
Mensajes: 784
Antigüedad: 18 años, 7 meses
Puntos: 56
Respuesta: Subida de videos a YouTube con su API

Cita:
did you forget to enable it when you configured PHP?
tienes activado SSL en tu configuración php ?
__________________
►I'm a devil on the run ♂
Jcxnet.com
*Keep It Simple **
  #9 (permalink)  
Antiguo 23/12/2012, 17:12
Avatar de dmm84  
Fecha de Ingreso: marzo-2011
Mensajes: 164
Antigüedad: 13 años, 1 mes
Puntos: 13
Respuesta: Subida de videos a YouTube con su API

No se si estará activado pero no importa mucho porque ese error lo da en local y donde quiero que funcione es en el servidor. Aun no he logrado echarlo a andar.
__________________
Mas vale un codigo que mil palabras
  #10 (permalink)  
Antiguo 23/12/2012, 21:13
Avatar de jcxnet  
Fecha de Ingreso: octubre-2005
Ubicación: Perú
Mensajes: 784
Antigüedad: 18 años, 7 meses
Puntos: 56
Respuesta: Subida de videos a YouTube con su API

como estás usando una conexión segura es necesario tenerlo activado, de lo contrario no podrás hacer pruebas en local
__________________
►I'm a devil on the run ♂
Jcxnet.com
*Keep It Simple **
  #11 (permalink)  
Antiguo 24/12/2012, 18:48
Avatar de dmm84  
Fecha de Ingreso: marzo-2011
Mensajes: 164
Antigüedad: 13 años, 1 mes
Puntos: 13
Respuesta: Subida de videos a YouTube con su API

ya pero en local no importa demasiado, es en el servidor donde debería funcionar y no encuentro la manera de que no me de el error:


Fatal error: Uncaught exception 'Zend_Gdata_App_AuthException' with message 'Authentication with Google failed. Reason: BadAuthentication' in /home/miapp/public_html/Zend/Gdata/ClientLogin.php:175 Stack trace: #0 /home/miapp/public_html/pruebas.php(19): Zend_Gdata_ClientLogin::getHttpClient('miusuario@g ma...', 'micontraseña', 'youtube', NULL, 'miaplicacion', NULL, NULL, 'https://www.goo...') #1 {main} thrown in /home/miapp/public_html/Zend/Gdata/ClientLogin.php on line 175
__________________
Mas vale un codigo que mil palabras
  #12 (permalink)  
Antiguo 25/12/2012, 18:34
Avatar de dmm84  
Fecha de Ingreso: marzo-2011
Mensajes: 164
Antigüedad: 13 años, 1 mes
Puntos: 13
Respuesta: Subida de videos a YouTube con su API

¿A nadie se le ocurre nada? :(
__________________
Mas vale un codigo que mil palabras

Etiquetas: api, youtube
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:34.