Skip to content

jupcan/youtube-dl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

64 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

uclm
distributed systems lab project

distributed mp3 downloader from youtube - uclm computer science

information

the project files can be divided into 3 different types:

  • zeroc ice files: locator.config so that the client knows the server address, node[n] containing the path to the corresponding node data as well as the .txt icestdout file and the xml beeing this one the core of the project with all the information of the nodes running, indirect communication between them and use of icestorm service to communicate.
  • python scripts: downloader.ice given by the teacher and containing the methods to be called, aka the interface we have to use, synctimer.py a client invocating methods through a timer to sync downloaderscheduler objects using the synctopic created, factory.py which contains the schedulerfactory -a server waiting a request from synctimer and from the client- and client.py being a normal client with a proxy and allowing us to make use of the interface methods.
  • makefile: to make the whole project execution and all the other stuff an easier task.

*when we use the method make we create a downloaderscheduler object through schedulerfactory that allow us to request downloads, transferences, songs lists etc. and when using kill we remove the previously created things.

installation

zeroc ice python client from pip source distribution

pip3 install zeroc-ice

youtube-dl command-line program to download videos from websites

sudo apt-get install youtube-dl

execution example

1.crear nuevo servidor
2.eliminar servidor
3.ver lista de canciones
4.descargar cancion
5.obtener cancion
6.servidores desplegados
7.salir de la aplicacion
introduzca una opcion: 1
introduzca el nombre del servidor: s1
introduzca una opcion: 4
servidor al que realizar la solicitud: s1
introduce la url: https://www.youtube.com/watch?v=iX−QaNzd−0Y
descargando...
[descargada]
introduzca una opcion: 3
servidor al que realizar la solicitud: s1
obteniendo lista de canciones...
[obtenida]
./Milky Chance − Stolen Dance (Album Version).mp3
introduzca una opcion: 1
introduzca el nombre del servidor: s2
introduzca una opcion: 3
servidor al que realizar la solicitud: s2
obteniendo lista de canciones...
[obtenida]
./Milky Chance − Stolen Dance (Album Version).mp3
introduzca una opcion: 5
servidor al que realizar la solicitud: s1
introduce el nombre: ./Milky Chance − Stolen Dance (Album Version).mp3
transfiriendo...
[transferida]
nuevo nombre de la cancion: milky
introduzca una opcion: 6
2 servidor/es: [’s1’, ’s2’]
introduzca una opcion: 7
finalizando ejecucion

*steps to setup the system and all details about it can be found on the documentation

⚠️ disclaimer: this software has been developed for educational purposes, use it at your own risk ⚠️

About

distributed systems lab project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published