Descargando videos de youtube desde JAVA

febrero 21, 2009 at 12:58 pm Deja un comentario

Este es el codigo de la libreria java, para poder descargar videos de youtube en java.

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package moises.java.YoutubeDownloader;
import java.io.*;
import java.net.*;

/*
*  ======
*  YoutubeDownloader Library 0.1
*  ======
*
* */
public class YoutubeDownloader {

/*
* Metodo getURL:
* Permite obtener el enlace final del video que deseamos descargar.
* */
public String GetUrl(String url)throws java.net.MalformedURLException,IOException{
URL urlConnection = new URL(url);
String returnedUrl = “”;
URLConnection conn = urlConnection.openConnection();
InputStream input = conn.getInputStream();
DataInputStream inputStream = new DataInputStream(input);
String readAll = inputStream.readUTF();
try{
if ( readAll.indexOf(“video_id=” ) > -1 ){
String splitedUrl[] = new String[1];
splitedUrl = readAll.split(“video_id=”);
splitedUrl = splitedUrl[1].split(“&title=”);
returnedUrl = “http://www.youtube.com/get_video?video_id=” + splitedUrl[0];
}
}catch (Exception o){
o.printStackTrace();
}
return ( returnedUrl );
}
/*
* downlodFlv: nos permite descargar un video a partir de una url raiz.
* */
public void downloadFlv(String url,String destFileName)throws java.net.MalformedURLException,IOException{
URL urlConnection = new URL(url);
URLConnection connection = urlConnection.openConnection();
InputStream inputStream = connection.getInputStream();
int bytes = 0;
byte buffer[] = new byte[ ( int ) connection.getContentLength() ];
FileOutputStream outWriter = new FileOutputStream(destFileName);
while ( ( bytes = inputStream.read(buffer) ) != -1){
outWriter.write(buffer,0,bytes);
}if ( inputStream != null || outWriter != null ){
inputStream.close();
outWriter.close();
}
}
/*
* ExecuteWithThread():
* Nos permite descargar un video usando una implementacion de clase Thread ( hilos
* */
public void ExecuteWithThread(String url,String destFileName){
Thread pThread = new Thread();
pThread.start();
synchronized ( pThread ){
try{
String gettedUrl = GetUrl(url);
downloadFlv(gettedUrl,destFileName);
}catch (Exception o){
o.printStackTrace();
}
}
}
}
Implementando funcionalidad para descargar videos de youtube en java.

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package javaapplication6;
import moises.java.YoutubeDownloader.*;

/**
*
* @author moi
*/
import java.io.*;
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws Exception{
System.out.println(“Introduce la url del video:”);
BufferedReader read = new BufferedReader(new InputStreamReader(System.in));
String url = read.readLine();
YoutubeDownloader down = new YoutubeDownloader();
String url2 = down.GetUrl(url);
down.downloadFlv(url2, “/home/moi/res.flv”);
}

}

Saludos.


Anuncios

Entry filed under: Programación.

Programacion en GNU/Linux. Ubuntu, OpenSuSE y Windows

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Trackback this post  |  Subscribe to the comments via RSS Feed


febrero 2009
L M X J V S D
    Mar »
 1
2345678
9101112131415
16171819202122
232425262728  

Licencia

Linux Jungle se encuentra bajo una licencia Creative Commons: Reconocimiento - No comercial - Compartir con la misma licencia Creative Commons License


A %d blogueros les gusta esto: