Genera códigos QR fácilmente en Python

Los códigos QR se han convertido en una parte esencial de nuestra vida digital, ofreciendo una forma rápida y conveniente de acceder a información, realizar pagos, y mucho más, simplemente escaneando un código con nuestro dispositivo móvil. Originados en la industria automotriz japonesa, estos códigos de barras bidimensionales han revolucionado la forma en que interactuamos con el mundo digital y físico.

Viendo lo útiles que pueden llegar a ser, seguro que alguna vez has querido generar un código QR para incluirlo en una tarjeta de visita o en un cartel o en una web… Lo que todo solemos hacer siempre es ir a lo más y buscar una pagina web que nos lo genere indicando una URL o algo del estilo.

Hoy os traigo otra opcion para generar estas matrices de datos desde código Python: qrcode.

Qrcode nos ayuda a generar de forma sencilla y con pocas líneas de código una imagen PNG con el código QR que queramos. Un ejemplo es el siguiente

import qrcode
qr = qrcode.QRCode(
  version=1,
  error_correction=qrcode.constants.ERROR_CORRECT_L,
  box_size=10,
  border=4,
)
qr.add_data('Some data')
qr.make(fit=True)

img = qr.make_image(fill_color="black", back_color="white")

Se puede escoger tamaño indicando un número del 1 al 40 en el parametro «version» (El 1 es una matriz de 21×21). También se puede cambiar el color de fondo y de QR. El parámetro error_correction controla la corrección de errores utilizada para el código QR.  El parámetro box_size controla cuántos píxeles tiene cada “caja” del código QR. El parámetro de borde controla el grosor de los cuadros que debe tener el borde (el valor predeterminado es 4, que es el mínimo según las especificaciones).

Hay más opciones que puedes consultar en la web de la librería: https://pypi.org/project/qrcode/

Os dejo algunos ejemplos: