Leer un feed desde Groovy

miércoles, 3 de noviembre de 2010

Saludos banda, ya casi no me paso por aquí, es que no tengo cosas interesantes que escribir. Pero bueno , esta ves ha surgido algo de lo que quiero hablar.

Como sabrán, algunos trackers de bittorent utilizan feeds RSS para distribuir sus contenidos, así, por ejemplo, una serie puede actualizar sus feeds con cada capitulo nuevo que sale, llevando en el el enlace del torrent para su descarga, realizandola asi automáticamente. Sabiendo esto, y en esos ratos en que mi mente vaga por el espacio sideral se me ocurrió ver si se podía hacer lo mismo pero con las descargas de JDownloader, lamentablemente no tienen algo similar implementado, así que, como buen ingeniero me dije a mi mismo "Que buenas tetas tiene Salma Hayek, bajaré algunas fotos". Despues de un rato me llego la idea de por que no programar un lector de feeds que filtre los enlaces de megaupload, rapidshare, guarever (como dice el pastor Yrion). Obviamente pense hacerlo en java pero como no encontré un API que me convenciera decidi buscar info de como hacerlo en groovy, y esto fue lo primero que encontre. Con ese codigo parsea un XML de un feed. Basandome en eso cree un pequeño script:



def rssFeed = "http://feeds.feedburner.com/WithoutAStyle";
def xmlFeed = new XmlParser().parse(rssFeed);

for (item in xmlFeed.channel.item) {
def description = item.description.text()
if (description.contains('otaku')){
def title = item.title.text()
def link = item.link.text()
println("Titulo: $title Link: $link")
}
}
Lo que hace el script es leer el feed de mi blog, ver cuales de mis post contienen la palabra "otaku" y muestra los titulos de la noticia y el enlace a ella. Así de facil. A ver si logro hacer el programa, si no, ya habrá quien si :P

0 comentarios: