Test Foro de elhacker.net SMF 2.1

Programación => Programación General => Java => Mensaje iniciado por: konarr en 23 Junio 2012, 03:11 AM

Título: Descargar videos de Youtube en Java.
Publicado por: konarr en 23 Junio 2012, 03:11 AM
nas,  como se manifiesta en el titulo de post quiero descargar videos de youtube utilizando Java.

Lo que quiero hacer es resivir como parametro la url del video de Youtube y descargar el video, el siguiente paso es convertir ese video a un formato de audio, y por ultimo poder seleccionar un directorio donde almacenar los archivos. Todo esto por consola.

Buscando he encontrado harta basura, lo mas rescatable es la propia Guía del desarrollador: Java, donde menciona la API de Youtube Guía del desarrollador: Java (//http://Gu%C3%ADa%20del%20desarrollador:%20Java), el problema es que enseñan a como subir videos de Youtube a tu sitio web, autentificacion, algunas cosas con los metadatos, etc. . Pero en ningun momento se menciona como descargar los videos.

¿Alguna idea de como hacerlo?
Título: Re: Descargar videos de Youtube en Java.
Publicado por: Nortis en 23 Junio 2012, 05:45 AM
Lo único que se me ocurre para lo de descargar el video de youtube es mirar código abierto de programas que lo hagan. Como Jdownload (uri para decargar el código abierto: http://es.jdownloader.com/articles/codigo-fuente.html (http://es.jdownloader.com/articles/codigo-fuente.html)), que ademas esta hecho en java. Estaría bien si lo haces que documentaras y lo subas al foro. Siento no poder ayudarte más.

Suerte.
Título: Re: Descargar videos de Youtube en Java.
Publicado por: ~ Yoya ~ en 23 Junio 2012, 06:39 AM
Muchos o mayormente lo que hacen es descargar el video y utilizando ffmpeg extraen el audio del video.

Saludos.
Título: Re: Descargar videos de Youtube en Java.
Publicado por: konarr en 23 Junio 2012, 21:19 PM
Gracias por las respuestas :)
@Nortis, estuve mirando el code de JDownload pero no pude entender como hace las descargas.
@Yoya tienes razón muchos utilizan ffmpeg para convertir.

Encontré un programa open source que es justo lo que quiero, se llama youtube-dl http://rg3.github.com/youtube-dl/documentation.html (http://rg3.github.com/youtube-dl/documentation.html) esta escrito en Python. Viendo el código fuente al parecer no interactua con la API de Youtube, mas bien hace una descarga 'directa', ademas no solo corre para Youtube, tambien lo hace con :

   YouTube.com.
   YouTube.com playlists (playlist URLs in "view_play_list" form).
   metacafe.com.
   Google Video.
   Google Video searches ("gvsearch" keyword).
   Yahoo! video.
   Yahoo! video searches ("ybsearch" keyword).
   vimeo.
entre otros.

utiliza las librerias :
Código (python) [Seleccionar]
import cookielib
import datetime
import getpass
import gzip
import htmlentitydefs
import HTMLParser
import httplib
import locale
import math
import netrc
import optparse
import os
import os.path
import re
import shlex
import socket
import string
import subprocess
import sys
import time
import urllib
import urllib2
import warnings
import zlib

acá dejo el code completo  http://pastebin.com/5fyHbuWi (http://pastebin.com/5fyHbuWi)

uhmm alguna idea de como hacer esta descarga 'directa' en Java ?
Título: Re: Descargar videos de Youtube en Java.
Publicado por: adwind en 24 Junio 2012, 22:18 PM
A principios de año hice uno en java :) el cual le implemente 7 conexiones por video para acelerar la descarga :p. mira te daré una pista
:)

Busca en google "descargar videos de youtube manualmente",  ahi mencionan como hacerlo,


Título: Re: Descargar videos de Youtube en Java.
Publicado por: konarr en 25 Junio 2012, 00:33 AM
@adwind Ya he buscando lo que mencionas, tanto por url, código fuente, cache del navegador, etc, pero no logro encontrar ningún metodo que aun este vigente.

Cuéntanos mas de tu programa :)
Título: Re: Descargar videos de Youtube en Java.
Publicado por: konarr en 28 Junio 2012, 23:43 PM
Tengo como leer el codigo fuente de una pagina, los datos los almaceno en un buffer y después el contenido del buffer se pasa a texto y se imprime.
Pero sigo con la gran interrogante ¿ como descargar los videos, alguna idea ?