Descargar videos de Youtube en Java.

Iniciado por konarr, 23 Junio 2012, 03:11 AM

0 Miembros y 1 Visitante están viendo este tema.

konarr

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, 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?

Nortis

#1
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), 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.

~ Yoya ~

Muchos o mayormente lo que hacen es descargar el video y utilizando ffmpeg extraen el audio del video.

Saludos.
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.

konarr

#3
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 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

uhmm alguna idea de como hacer esta descarga 'directa' en Java ?

adwind

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,



konarr

@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 :)

konarr

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 ?