// inicio

8 Jul 2010

Enviar email con valores de una base de datos UTF-8 en Python

Si tenemos un base de datos MySQL y queremos enviar emails usando la librería smptlib de python, nos puede dar más de un quebradero de cabeza si queremos usar la codificación UTF-8. Pongo aquí este breve manual que he hecho con la ayuda de Héctor, un compañero del proyecto en el que estoy trabajando ahora mismo.

Si usamos la librería MySQLdb, tendremos que añadir unos parámetros adicionales para indicarle que nos vamos a conectar a una base de datos con codificación UTF-8.

con = MySQLdb.connect(host, user, passwd, database, charset="utf8", init_command="set names utf8")
con.names = "utf8"

Ahora creamos el mensaje a enviar:

mensaje_email = u‘Código de alarma: %s \n % codigo
mensaje_email+= u‘ID de alarma: %s\n% ID_ALARMA
mensaje_email+= u‘Descripción de alarma: %s\n % descripcion

#Formar mensaje de email tipo MIME.
msg = MIMEText(mensaje_email.encode(‘utf-8′), _charset="UTF-8")
msg[‘Subject’] = subject
msg[‘From’] = email_from
msg[‘Reply-to’] = email_reply_to
msg[‘To’] = email_to

Y por último, lo enviamos a través del servidor de correo:

mailServer = smtplib.SMTP(mail_server)
mailServer.ehlo()
mailServer.starttls()
mailServer.ehlo()
mailServer.login(username, passwd)
try:    
     mailServer.sendmail(username, to_addr, msg.as_string())
except BaseException, e:
    print "Error al enviar e-mail: %s" % e
mailServer.close()

31 May 2010

!BarraLibre Camp

Post copypasteado de la OSL (sí, lo sé, tengo esto un poco abandonado…)


El próximo 10 de Junio, en la Escuela Técnica Superior de Ingenierías Informática y Telecomunicaciones de la Universidad de Granada, se celebrará la primera !BarralibreCamp.

La !BarralibreCamp está abierta a todo el mundo, aunque se recomienda encarecidamente que te apuntes antes en el formulario creado al efecto (y, a ser posible, también en el wiki) por cuestiones de organización.

La !BarralibreCamp es una Barcamp, un evento autoorganizado en el que todos los asistentes son también participantes.

Una barcamp no se divide entre ponentes y publico, si no que todos los participantes están invitados a hablar y escuchar. Tampoco tiene programa, si no que se va organizando in situ y sobre la marcha, con una mínima preparación previa.

La idea detrás de todo esto es que la !BarralibreCamp sea un evento intenso y activo, donde se aprenda a través de la participación.

En la !BarralibreCamp, como en cualquier barcamp, hay una pizarra donde se indican las aulas o espacios disponibles y las horas, y cada cual puede incribir libremente su taller, ponencia o charla en el espacio que haya disponible. Desde ese momento, cualquier otro asistente puede decirdir inscribirse.

En la !BarraLibreCamp, el tema es el software y la cultura libres en todos sus aspectos: enseñanza, difusión, aplicaciones. Si usas, desarrollas, enseñas o quieres enseñar software libre, serás bienvenido.

Pensamos que el software es libre. Pero nos gusta aclarar que es libre como el sol cuando amanece, no como en la barra libre.

De ahí el !BarraLibre (NOT BarraLibre): No es barra libre.

Tradicionalmente, las barcamps tiene algunas reglas:

  • La primera regla del Barcamp es “Todo el mundo habla del Barcamp”.
  • La segunda regla del Barcamp es “Todo el Mundo postea (y twittea, y facebookea…) del barcamp”.
  • La tercera regla del Barcamp es “Si vas a presentar algo, pon tu nombre y el tema del que hablarás en el tablón de anuncios”.
  • La cuarta regla del Barcamp es “Introducciones de tres palabras”.
  • La quinta regla del Barcamp es “Tantas presentaciones a la vez como las instalaciones permitan”.
  • La sexta regla del Barcamp es “No hay presentaciones preprogramadas, no hay turistas”.
  • La séptima regla del Barcamp es “Una presentración durará el tiempo que necesite, o hasta que comience la siguiente en el tablón”.
  • La octava regla del Barcamp es “Si es tu primer Barcamp, DEBES presentar algo (Vale. No DEBES hacerlo, pero intenta encontrar algo que presentar o, por lo menos, haz preguntas y sé un participante activo)”.

Ven y participa.

16 Mar 2010

Uso del comando date en cron

Si queremos crear un fichero de log con el resultado de un script que vamos a lanzar periódicamente usando cron, conviene tener en cuenta un detalle de sintaxis.


$ crontab -e

# m h  dom mon dow   command
00 03  * * * /ruta/script.sh > /ruta/fichero_`date +\%y_\%m_\%d`.log

Esto sería un ejemplo de la lista de tareas de cron, si os fijáis en el detalle de `date +\%d_\%m_\%y` se han escapado los símbolos de %. Esto se explica perfectamente en el man 5 crontab, pero lo escribo aquí para no olvidarme y por si de paso le sirve a alguien más.

The ‘‘sixth’’ field (the rest of the line) specifies the command to be run. The entire command portion of the line, up to a newline or % character, will be executed by /bin/sh or by the shell specified in the SHELL variable of the crontab file. Percent-signs (%) in the command, unless escaped with backslash (\), will be changed into newline characters, and all data after the first % will be sent to the command as standard input. There is no way to split a single command line onto multiple lines, like the shell’s trailing “\”.

Más información: cron y date.

27 Feb 2010

I Hackathón de Proyectos de Software Libre de la UGR

Del 5 al 8 de marzo se celebra en Granada el I Hackathón de Proyectos de Software Libre de la UGR. Un Hackaton es una especie de maratón de hacking y en esta ocasión consistirá en avanzar el desarrollo de diferentes proyectos participantes en el Concurso Universitario de Software Libre creando una comunidad a través de los mismos.

Se realizarán diferentes charlas sobre los proyectos que se presentan, así como sobre metodología de trabajo en equipo. Yo me he apuntado porque creo que el ambiente va a estar bien y tengo especial curiosidad por el proyecto Kora, que está haciendo gskbyte para la plataforma Android.

No sólo se está buscando a gente de Informática, si no también de Bellas Artes, Traducción, Empresariales, etc. Más información en http://sl.ugr.es/001Y.

13 Feb 2010

Buzz va, buzz viene

Hace pocos días Google nos sorprendía con una nueva aplicación para aprovechar la red social subyacente en Gmail. Se trata de Google Buzz, y es similar a Facebook, pero quitando todos los jueguecicos en flash.

Podemos estar de acuerdo en que quizás se han precipitado lanzando este servicio al gran público sin una “beta” de por medio, y además integrarlo con Gmail de una forma poco ortodoxa. Lo que me sorprende (bueno, en realidad no), es la rapidez con la que la gente juzga las cosas. El día en el que salió, estaba Twitter infectado de mensajes “Ya tengo buzz!”, y al instante siguiente estaba Buzz lleno de “Qué cosa más inútil” o similares.

En cambio, con Google Wave sucedió todo lo contrario, al principio se levantó mucha expectación y sólo algunos tenían la ansiada invitación. Todo el mundo hablaba bien de él, como una revolución, y salió hasta en los periódicos. Pero el tiempo ha demostrado ser una de las mayores decepciones del año: fallos de sincronización de waves, lentitud, no se integraba con Gmail, etc. El caso es que muchos lo veíamos como una herramienta prescindible y caótica, y ahora prácticamente nadie lo usa.

Volviendo a Buzz, no debemos olvidarnos de que también lo tenemos como aplicación en móviles y que puede dar bastante juego.

En general, a mi sí me ha gustado Buzz, ya que cada vez uso menos Twitter por el ruido que hay, y en cambio con este nuevo servicio puedo ver de un vistazo la actividad de mis amigos en Internet y las conversaciones están jerarquizadas para que no se convierta en un caos. Espero que en breve aparezcan más opciones de personalización y sobre todo, de privacidad.

6 Feb 2010

Primer post desde Android

image

Este es el primer post que publico desde mi móvil HTC Magic con Android, el primer sistema operativo libre de Google. El cacharrico este es una pasada y permite desarrollar aplicaciones móviles muy versátiles de forma gratuita.

30 Jan 2010

Go4.es acortador de URLs libre

En los últimos tiempos se han popularizado los acortadores de direcciones webs, sobre todo para su uso en redes sociales.

Por poner un ejemplo, si queremos pasarle a alguien la URL de este mapa…

http://maps.google.es/maps?f=q&source=s_q&hl=es&geocode=&q=Granada,+Spain&sll=40.396764,-3.713379&sspn=7.343843,19.753418&ie=UTF8&hq=&hnear=Granada,+Andaluc%C3%ADa&t=h&z=12

…sería mejor usar simplemente esta: http://go4.es/004M

Go4.es ha sido desarrollado por Codeko, modificando el código de SLUGR, un acortador de URLs creado por la Oficina de Software Libre de la UGR. Ambos tienen licencia AGPL.

Editado: Un detalle que se me ha pasado, y me ha recordado nauj27 en los comentarios, es que reconoce extensiones de archivos y las añade al final de la URL corta, de manera que nos puede resultar útil en algunas webs o aplicaciones.

9 Jan 2010

Mis extensiones de Chromium

Desde hace algún tiempo vengo usando Chromium como navegador principal y estoy bastante contento en cuanto a rapidez y estabilidad. Si bien me sigue gustando Firefox por sus magníficos plugins y la superbarra, últimamente se ha vuelto lento al arrancar y cargar varias webs.

Chromium no se está quedando atrás en cuanto a extensiones, y comparto con vosotros las que estoy usando actualmente, por si os resultan de interés.

Estas son todas mis extensiones hasta el momento, podéis ver todas las disponibles en Google Chrome Extensions. Podéis descargar las últimas snapshots de Chromium para vuestro sistema operativo desde aquí.

Bienvenido a The Power of Mind

The Power of Mind es el blog personal de DraXus, orientado a temas de Informática, Software Libre e Internet. Más sobre el autor…

del.icio.us flickr plurk twitter skype
linkedin facebook tuenti lastfm youtube

Recomendados

AndaluciaPeople.com
Alhambrismo.com

flickr