Generar código QR en Python

generar código qr en python

Generar un código QR en Python es posible gracias al módulo qrcode que nos permite generar códigos QR a partir de cadenas de texto (strings).

 

Qué es un código QR

Los códigos QR o códigos de respuesta rápida (abreviatura de Quick Response Code en inglés) son un módulo para almacenar información en una matriz de puntos o en un código de barras bidimensional. En pocas palabras, son la evolución del código de barras convencional.

Debido al auge de los teléfonos inteligentes estos códigos se han vuelto muy conocidos ya que sirven para almacenar mapas de localización, correos electrónicos, páginas web o un perfil en cualquier red social.

Instalar el paquete qrcode de Python

Para instalar el paquete qrcode y poder usarlo en Python debemos utilizar el administrador de paquetes de Python de la siguiente forma:

  • Instalarlo para la versión 3 de Python:
    pip3 install qrcode
  • Instalarlo de forma general:
    pip install qrcode

Una vez instalado ya podemos utilizarlo en cualquier programa de Python importando el módulo de forma tradicional:

import qrcode

Instalar el paquete pillow de Python

El paquete pillow nos permitirá manejar las imágenes generadas con los códigos, como por ejemplo guardarlas en nuestro equipo.

La instalación es de forma similar al paquete anterior:

  • Instalarlo para la versión 3 de Python:
    pip3 install pillow
  • Instalarlo de forma general:
    pip install pillow

Generar código QR con qrcode en Python

Ejemplo sencillo con qrcode en Python

Un ejemplo sencillo de como generar un código QR en Python con qrcode es el siguiente:

import qrcode  

imagen = qrcode.make('mapecode.com')
archivo_imagen = open('mapecode.png', 'wb')
imagen.save(archivo_imagen)
archivo_imagen.close()

Ejemplo de qrcode desde el terminal

Otra forma de generar códigos de respuesta rápida con qrcode es ejecutar el siguiente comando desde la terminal:

qr "Hola" > hola.png

La fórmula sería el comando qr, la cadena de texto, el símbolo «>» y el nombre de la imagen con la extensión correspondiente.

Proyecto para generar códigos QR en Python

Ahora vamos a crear un proyecto en Python más elaborado y que podamos utilizar para generar códigos de respuesta rápida siempre que queramos.

import qrcode
from PIL import Image

# Generar codigo QR:
cadena = input("Introduzca el texto para el codigo QR: ")
imagen = qrcode.make(cadena)
# Generar imagen:
nombre_imagen = input("Introduzca el nombre de la imagen: ") + '.png'
archivo_imagen = open(nombre_imagen, 'wb')
imagen.save(archivo_imagen)
archivo_imagen.close()
# Abrir imagen
ruta_imagen = './' + nombre_imagen
Image.open(ruta_imagen).show()

El proyecto es muy sencillo, reutilizando el código del primer ejemplo, pero pidiendo por teclado cierta información. Primero se pedirá el texto para generar el código QR con qrcode y después el nombre con el que se quiere guardar la imagen. También se añadido la funcionalidad de abrir la imagen una vez generada.

Con esto conseguimos tener un programa que podemos utilizar cuando queramos generar un código de respuesta rápida fácilmente.

Deja un comentario