Software Free - Richard Stallman

La libertad no es poder elegir entre unas pocas opciones impuestas, sino tener el control de tu propia vida. La libertad no es elegir quien será tu amo, es no tener amo..

Software Free - Richard Stallman

El deber de un ciudadano es no creer en ninguna profecía del futuro, sino actuar para realizar el mejor futuro posible

Software Free - Richard Stallman

A Microsoft no le gusta que escapemos a su poder.

Software Free - Richard Stallman

“¿Por qué quiere regalar Microsoft copias casi gratuitas (de su programa) a escuelas y niños?, es como regalar drogas adictivas, ya que la primera dosis es gratis pero, después de ser dependiente, tienes que pagar”.

Software Free - Richard Stallman

Ahora la libertad en mi pais es una palabra sin significado y sin aplicación práctica en la vida.

.



jueves, 25 de julio de 2013

WGET mas que un gestor de descarga



Cansado de estar utilizando varios programas para descargar archivos y estos relenticen tu maquina y ha veces descargan mal los archivos , pues hoy te quiero presentar a una aplicacion tanto en windows como en linux que va ha reemplazar todos esos programas.

Se llama WGET y es muy conocido en el mundo del software free y estas son algunos de los famosos comandos que hoy te voy a presentar.


Ejemplos básicos

  • wget http://ejemplo.com/programa.tar.gz
La manera más simple de usarlo, descarga el archivo indicado.
  • wget http://ejemplo.com/programa.tar.gz ftp://otrositio.com/descargas/video.mpg
Es posible indicar más de una descarga a la vez, incluso con distintos protocolos.
  • wget http://ejemplo.com/*.pdf
Otra manera de descargar varios archivos, con extensión similar.

(creamos una lista en archivos.txt que serán descargados)
http://ejemplo.com/programa.tar.gz
http://ejemplo.com/rpm/paquete.rpm
ftp://otrositio.com/descargas/distro.iso (descargamos todos indicando el archivo)
  • wget -i archivos.txt

Si vas a descargar varios archivos, índicalos a través de una lista en un archivo.
  • wget -c http://ejemplo.com/distro.iso
  • wget -i -c archivos.txt
Si la descarga se interrumpió por algún motivo, continuamos la descarga desde donde se haya quedado con la opción c
  • wget -o reporte.txt http://ejemplo.com/programa.tar.gz
Proporciona un reporte (log) sobre la descarga.
  • $ wget -o /reporte.log --limit-rate=50k ftp://ftp.centos.org/download/centos5-dvd.iso
En descargas muy largas como el iso de alguna distro de Linux, puedes limitar el ancho de banda de la descarga en específico, ya que podría ser que la descarga se llevará todo el ancho de banda durante varias horas.
  • wget –http-user=admin –http-password=secreto http://ejemplo.com/archivo.mp3

Si es un sitio donde se requiere de usuario/contraseña usa estas opciones.
  • wget -t 50 http://ejemplo.com/pelicula.mpg
Por defecto, wget realiza 20 intentos de establecer la conexión e iniciar la descarga, en sitios muy saturados es posible que ni con 20 intentos se logré, con la opción t (tries) aumenta a más intentos.
  • wget -t inf http://ejemplo.com/pelicula.mpg
¿Quieres que intente hasta que logré la conexión?, usa la opción 'inf' de intentos infinitos.

Ejemplos avanzados


  • wget www.linuxtotal.com.mx
Puedes descargar toda una página completa, wget no está limitado a solo descargas de archivos. Sitios completos pueden descargarse también.
  • wget -p www.linuxtotal.com.mx
Lo mismo que lo anterior pero con esta opción p descarga además todos los elementos extras necesarios de la página como hojas de estilos, imágenes en línea, etc.
  • wget -r www.ejemplo.com -o reporte.log
  • wget -r -l10 www.ejemplo.com -o reporte.log

Con la opción r se descarga recursivamente hasta 5 niveles del sitio.
Con la opción l se aumenta el nivel de recursividad hasta el número indicado, también es posible usar 'inf' como valor de recursividad infinito.
  • wget --convert-links -r http://www.sitio.com/
(o también)
  • wget -k -r http://www.sitio.com/
Por defecto, los enlaces dentro del sitio apuntan a la dirección del dominio completo. Si deseas descargar el sitio recursivamente y después estudiarlo fuera de línea (off line) usa la opción convert-links que los convertirá en enlaces locales, apuntando a las páginas dentro del sitio descargado.
  • wget -r -l3 -P/tmp/sitio ftp://www.unsitio.com/
Por defecto, el sitio a descargar se guarda en el mismo directorio donde estés ejecutando wget, con la opción P puedes indicar un directorio distinto.
  • wget --mirror http://www.linuxtotal.com.mx/
(o también)
  • wget -m http://www.linuxtotal.com.mx/
De este modo obtienes una copia (un espejo) completa del sitio. La opción --mirror es igual a usar las opciones -r -l inf -N que indica recursividad a nivel infinito y obtienendo la marca de tiempo original de cada archivo descargado (opción -N).
  • wget --mirror --convert-links --html-extension http://www.linuxtotal.com.mx
(o tambíen)
  • wget -m -k -E http://www.linuxtotal.com.mx
Si descargas el sitio completo para verlo fuera de línea (off line) es posible que varios archivos descargados no se abran, debido a extensiones como .cgi, .asp o .php, es entonces posible indicarle a wget con la opción E o --html-extension que convierta todos los archivos a extensión .html.
  • wget -H -r -l3 -k -E -p http://miblog.sitiodeblogs.com
La opción H (span hosts) expande la recursividad a los sitios desde donde se enlace el original. Este comando descargará el sitio con una recursividad de 3 niveles (-r -l3), conviertiendo los enlaces a locales para examinarlo off line (-k), convierte todo a extensiones .html (-E), descarga completamente imágenes y demás elementos de cada página (-p) y además descarga la página externa de los enlaces que apunten fuera del sitio (-H).

Este tipo de descargas, dependiendo del sitio, puede llenar todo un disco duro!!!!, asi que úsalo a discresión.

Un ejemplo extremo de la potencia de wget

El siguiente ejemplo viene muy bien detallado en este sitio, es una línea que busca archivos de música mp3 desde una lista de sitios que previamente hayas definido, recuerda, un renglón por cada sitio
  • .wget -r -l1 -H -t1 -nd -N -np -A.mp3 -erobots=off -i sitiosmp3.txt

Veámoslo por partes:
  1. [-r -l1] recursivo en solo un nivel, solo buscará un nivel en cada subdirectorio que encuentre por sitio. 
  2. [-H] si dentro del sitio encuentra un enlace externo, que lo siga, ya que posiblemente lleve a otro sitio de descarga de múscia. 
  3. [-t1] -t es igual --tries, solo hará un intento de conexión, si no lo logra continua al siguiente sitio. 
  4. [-nd] indica no crear subdirectorios para cada archivo descargado, es decir, todo nos lo deja en el mismo lugar. 
  5. [-N] conserva la fecha y hora (timestamp) del archivo original que se descargue, de otro modo pondría la fecha y hora de nuestro sistema. 
  6. [-np] no parent, no seguir enlaces a directorios superiores, solo del actual y uno hacía abajo, por -r -l1 
  7. [-A.mp3] -A indica a wget el tipo de archivo a descargar solamente, en este caso solo "mp3". 
  8. [-erobots=off] esto evita que wget ignore los archivos 'robots.txt' que pudiera haber, ya que puede ser que dentro de estos archivos haya indicaciones de que subdirectorios los buscadores no deben hurgar (incluyendo a wget). Con esto lo evitamos y buscamos en todo el nivel. 
  9. [-i sitiosmp3.txt] el archivo con la lista (hecha a tu gusto, con unos cuantos o decenas de sitios de música) de los sitios desde donde buscar "mp3" y descargarlos. 
  10. Si ejecutas este comando de manera diaria o a través de un cron entonces se descargará la música, y gracias a la marca de tiempo solo descargará los que sean más nuevos que el original

Muy pronto hare un video tutorial de Wget y lo pondre en la parte inferior de este blog.

Agrupamiento de datos clustering

Antes de hablar sobre métodos de minería de datos primero tenemos que saber que es minería de datos es por eso que les pro proporciono estas lineas para que se enteren mas .
En la sociedad actual se ha producido un gran crecimiento de las bases de datos y una necesidad de aumento de las capacidades de almacenamiento que no pueden resolverse por métodos manuales. Por este motivo se hacen necesarias técnicas y herramientas informáticas que ayuden, de forma automática, en el análisis de esas grandes cantidades de datos. La minería de datos (en inglés data mining) es una de las técnicas más utilizadas actualmente para analizar la información de las bases de datos. La finalidad que persigue la minería de datos es la de extraer patrones, describir tendencias, predecir comportamientos y, sobre todo, ser provechosa en la investigación computarizada que envuelve la sociedad actual con amplias bases de datos de escasa utilidad. La minería de datos no es más que una etapa, aunque la más importante, del descubrimiento de la información en bases de datos (KDD, sus respectivas siglas en inglés para Knowledge Discovery in Databases). En síntesis, se pueden establecer como objetivos prioritarios de la minería de datos los siguientes: 
  1. Identificación de patrones significativos o relevantes.
  2. Procesamiento automático de grandes cantidades de datos. 
  3. Presentación de los patrones como conocimiento adecuado para satisfacer los objetivos de los usuarios.
Una ves que ya sabemos que es minería de datos les paso a informar lo que es el famoso metodo clustering


El proceso de agrupar un conjunto de objetos abstractos o físicos en clases similares recibe el nombre de clustering. Un cluster es, una colección de datos que son parecidos entre ellos y diferentes a los datos pertenecientes a otros clusters. Un cluster de datos puede ser tratado colectivamente como un único grupo en numerosas aplicaciones. Las técnicas de clustering son técnicas de clasificación no supervisada de patrones en conjuntos denominados clusters.
El problema del clustering ha sido abordado por gran cantidad de disciplinas y es aplicable a una gran cantidad de contextos, lo cual refleja su utilidad como uno de los pasos en el análisis experimental de datos. Las técnicas de clustering han sido ampliamente utilizadas en múltiples aplicaciones tales como reconocimiento de patrones, análisis de datos, procesado de imágenes o estudios de mercado. Gracias al clustering se pueden identificar regiones tanto pobladas como dispersas y, por consiguiente, descubrir patrones de distribución general y correlaciones interesantes entre los atributos de los datos. En el área de los negocios, el clustering puede ayudar a descubrir distintos grupos en los hábitos de sus clientes y así, caracterizarlo en grupos basados en patrones de compra. El análisis de clusters se puede usar para hacerse una idea de la distribución de los datos, para observar las características de cada cluster y para centrarse en un conjunto particular de datos para futuros análisis.
A diferencia de la clasificación, el clustering no depende de clases previamente definidas ni en ejemplos de entrenamientos etiquetados a priori. Por esta razón, se trata de una forma de aprendizaje por observación en vez de aprendizaje por ejemplos. En el clustering conceptual un grupo de objetos forma una clase sólo si puede ser descrito mediante un concepto, lo que difiere del clustering convencional que mide similitudes basadas en distancias geométricas. El clustering conceptual consiste en dos componentes:
  1. Descubre las clases apropiadas.
  2. Forma descripciones para cada clase, tal y como sucede en la clasificación

si les interesa saber mas sobre el tema tienes 2 opciones .

Opción 1



Opción 2