Conectar con una base de datos MySQL desde Python (I)

1480896754_pythonCuando programaba (aún lo hago) aplicaciones web, utlizaba las utilidades PHP para conectar con bases de datos y poder tener la interacción con los datos que me hiciera falta en ese momento. Nunca había pensado que MySQL se pudiera utilizar fuera de las aplicaciones web. Pues resulta que gracias a mi nueva tarea de doctorando, estoy obligado a extraer datos de un servidor MySQL, pero no desde el gestor PHPMyAdmin que uso habitualmente, sino desde consola. Ya he experimentado con la conexión vía bash, pero necesito algo más versátil, así que hoy pensé en Python.

Existen varias maneras de conectar Python con un servidor MySQL, como vemos en los comentarios de los usuarios de StackOverflow. Después de haber investigado algo más, y de probar yo mismo desde la consola con Python, me decantaré por las dos maneras más usuales: MySQLdb y mysql connector.

Continuar leyendo “Conectar con una base de datos MySQL desde Python (I)”

Ejecutar comandos de Linux mediante Python

1429409720_application-x-pythonComo opinión personal, y sin que sea el motivo de crear una disputa entre unos y otros, creo que PHP es más tolerante a errores que Python. Claro, que digo esto porque llevo únicamente un par de semanas dedicado a Python, y aunque como lenguaje de programación me parece sencillo de usar y aprender, creo que escupe errores constantemente, y que a veces encontrar el error no es tan intuitivo como pudiera parecer.

Pero una vez mencionada mi opinión personal, es hora de ponerme al tema del post. Resulta que he encontrado como incentivo para aprender Python el uso de este lenguaje en todos mis scripts de shell que tengo para mantenimiento de mis sistemas. En ocasiones, me doy cuenta que lo que en un script de shell me lleva únicamente 4-5 líneas, en Python me lleva casi el triple, y sin dejar de escupirme errores en la consola. Visto desde el lado bueno, no sólo aprendo a usar Python, sino que si en alguna ocasión necesito complicar el script, posiblemente Python me ofrezca más potencia para hacerlo.

He comenzado a pasar mis scripts a Python, pero sin fijarme en la versión del mismo. Resulta que cuando me di cuenta, estaba programando en Python 2, cuando prácticamente todo el mundo programa ya en Python 3. Esto es importante porque el módulo que se utiliza para usar la línea de comandos está obsoleto en Python 3. Aun así, lo explicaré para ambas versiones.

Continuar leyendo “Ejecutar comandos de Linux mediante Python”