Spiga

getTorrent.py – script, para descarga de .torrent del RSS de Mininova y añadirlos a MLDONKEY

October 23, 08 by admin


Recientemente un amigo me paso un script para descargar Torrents de series españolas del MLDONKEY, el funcionamiento era que solicitaba el rss de series de mininova y lo parseaba para encontrar la url de dicho archivo, lo descargaba y guardaba en la carpeta que por defecto viene en el subdirectorio de mldonkey con nombre torrents/incoming. Mldonkey añade a su lista de descarga los torrent que se encuentre en esa carpeta.

Modificando su herramienta, la he convertido en un script para bajarme las series automáticamente sin necesidad de estar cada Lunes .. Martes etc… bajandome el torrent de la serie de turno y introduciendolo en MLDONKEY para subirle el torrent. El mecanismo es que seleciona del RSS el que más Seeds y Leechers tenga la formulá solo para mentes avanzadas Seeds*2+Leechers :P

El Script tiene dos modos básicos.

Manual:
[sourcecode language='Python']python getTorrent.py Dexter s03e04[/sourcecode]
Guardará en el directorio que le inquemos dentro del script como ML_PATH el torrent con mayor puntuación que de como resultado la busqueda de Dexter+s03e04, podriamos añadir todas las palabras de busqueda que queramos.

Automático:
[sourcecode language='Python']python getTorrent.py -c data.nui[/sourcecode]
contenido de data.nui:
[sourcecode language='Python']
Dexter+s03e01
Dexter+s03e02
Dexter+s03e03
Dexter+s03e04
[/sourcecode]
Ejecutamos esta orden mediante cron todos los Lunes. Primero descargará Dexter s03e01 al Lunes siguiente Dexter s03e02 y así sucesivamente hasta el final. Cierto es de que debemos de quitar el cron cuando se acabe la serie, aunque este no hará nada malo, ya que el archivo quedará vacio y no ejecutará nada.

Descargar: getTorrent.tar.gz

Canción para el Viernes

October 10, 08 by admin

Porque no todos los viernes son iguales.

jQuery + jSont + PHP + MySql …. me encanta :D

October 09, 08 by admin

Voy a intentar explicaros como cargar los datos de nuestra base de datos usando JavaScript con las librerias(jQuery y jSonT) y PHP.
Lo primero es conocer cada elemento que vamos a usar:
jQuery es una librería en JavaScript diseñada para otorgar a nuestra aplicación todas las ventajas de la tecnología Ajax una de las más populares.
jSonT también es una librería para JavaScript que usaremos para representar los valores de la base de datos en tablas, en ella podemos definir plantillas que podremos ir utilizando para la representación de la información en tablas.
PHP lo usaremos para la comunicación con la base de datos, y la definición de clases si fuera necesario.
MySql es el motor de base de datos elejido.

Empezaremos con el fichero html index.html
<html>
<head>
<title>Ejemplo</title>
<script src=”js/jquery.js”         language=”Javascript”></script>
<script src=”js/jsont.js”         language=”Javascript”></script>
<script src=”js/jsont-style.js” language=”Javascript”></script>
<script src=”js/myajax.js” language=”Javascript”></script>
<script>
loadTable(“table_productos”, get_data(‘products’, ‘getAll’, ”), ‘products_jsont’);
</script>
</head>
<body>
<div id=”table_productos”>

</div>
</body>
</html>

Declaramos las librerias jquery y jsont, el archivo jsont-style.js será donde definiremos las plantillas de jsont.

Creamos un div donde cargaremos la tabla con los datos.

Llamamos a la función loadTable que a su vez llama a get_data, veremos lo que hace a continuación.

myajax.js

function loadWeb(pag) {
if (typeof window.ActiveXObject != ‘undefined’ ) req = new ActiveXObject(“Microsoft.XMLHTTP”);
else req = new XMLHttpRequest();
req.open(“GET”, pag, false);
req.send(null);
return req.responseText;
}
function get_data( place, func , more){
var code = “include/interfaz.php?type=”+ place +”&function=”+ func + more;
var res = loadWeb( code );
return eval(res);
}
function loadTable( strId, xarray, type ){
$( “#”+ strId ).append(jsonT(xarray, t[type]));
}

loadWeb nos cargara el contenido de una web de manera sincrona, con esto conseguimos capturar el json generado por en el archivo interfaz.php en una variable javaScript
get_data es la encargada de llamar a loadWeb, definimos dentro de la estructura de interfaz.php indicarles que hacieones debe tomar
loadTable nos creará la tabla en la id que le indiquemos como parámetro con el codigo json devuelto por get_data y con la plantilla jSonT

jsont-style.js
var t = new Array;
t["products_jsont"] = { “self”: “<table id=”products_table”>{$}</table>”,
“self[*]“: “<tr id=’{$.id_product}’><td>{$.name}</td><td>{$.description}</tr>” };

Aquí tenemos la plantilla que vamos a usar en este caso concreto para los datos de productos.

Pues en definitiva, un mecanismo muy potente y poderoso para hacer autenticas maravillas.

Espero no haberme saltado nada :S

Que le pasa a avahi con apt??

September 17, 08 by admin

Estoy hasta los whitney del ” j o d i d o ” avahi, lo elimine a pesar de que apt me advertía de que una dependecia de avahi era ubuntu-desktop!! pero la desistalción no llegaba a los 3 M , y ahora mirar las dependencias que me trae banshee.
apt-get install banshee-extension-mirage banshee banshee-1

Se instalarán los siguientes paquetes extras:

avahi-daemon libboo2.0-cil libnotify0.4-cil podsleuth

Paquetes recomendados

libnss-mdns

Se instalarán los siguientes paquetes NUEVOS:

avahi-daemon banshee-1 banshee-extension-mirage libnotify0.4-cil podsleuth

Se actualizarán los siguientes paquetes:

libboo2.0-cil

Alguien sabe algo sobre esa extraña relación que tiene avahi con apt, esto es cosa de ubuntu ??

Cancion para el Viernes – Mano Negra- la vida me da palo

September 12, 08 by admin


no se que tiene esta canción pero parezco como cuando a un bebe le pones su canción preferida . . . lo malo es lo poco que dura.

Anuncio de Cisco.

September 10, 08 by admin



Me parece patético la verdad, muy en su linea empresirial.

iftop, monitorea el tráfico al estilo de top

August 06, 08 by admin

Aquí os dejo, siguiendo la estela de iotop, otra aplicación para la monitorización en tiempo real de nuestros servicios en este caso para mostrar el ancho de banda usado por cada interfaz quien, como y cuanto consume.

Web oficial

Canción para el Viernes

August 01, 08 by admin

Este viernes lo pillo con fuerzas porque comienzo mis vacaciones un mesesito que ya me hacía falta, no recuerdo tanto tiempo libre la verdad, aunque pensandolo bien me temo que tendré que estudiar el FNS que este primer mes no le he dedicado el tiempo que debiera y la verdad tengo ganas de meterle caña!

Nada mejor que Nirvana y su Smells like teen spirit para describiros como me siento.

DotProject alert

July 28, 08 by admin

Si no conoces DotProject

Tenía la necesidad en mi empresa de crear un pequeño script que avisara a los trabajadores si habían metido sus horas en DotProject así que cree este pequeño script que chequea si el dia anterior el usuario en cuestión tiene algún log en DotProject, a este script lo llamo desde el cron todos los martes, miercoles, jueves, viernes y sábados para saber si el dia laborable anterior había introducido sus horas. Esto lo uní a un formulario donde aparecieran los usuarios de DotProject y cada uno pueda darse de alta en el sistema de alerta y de baja cuando quiera.

Sin más os dejo el codigo por si a alguien pudiera interesarle. Code

iotop, top para controlar lectura y escritura de nuestros discos.

July 26, 08 by admin


Me acabo de topar con esta herramienta desarrollada en python, calcado a nuestro top de toda la vida pero destinada aver que ocurre en nuestros espacio de discos.

Lo he instalado mediante git:

(ruta)# git clone git://repo.or.cz/iotop.git

Despues he creado un enlace simbólico a /usr/bin y listo

#sudo ln -s (ruta)/iotop/iotop.py /usr/bin/iotop

Enlace: iotop