How to use Python to create a QR code? Share in multiple ways

青灯夜游
Release: 2022-10-20 19:30:39
forward
7377 people have browsed it

How to use Python to create a QR code? The following article will share with you various methods of using Python to implement QR codes. If you need to use Python to create a QR code, you should bookmark this blog!

How to use Python to create a QR code? Share in multiple ways

As a qualified Python programmer, you will inevitably use QR code related operations in your work. So how can you quickly implement it in Python? Don’t worry, our blog will solve it for you.

It doesn’t matter if you don’t need it for the time being. Like and save it. After all, such a comprehensive article is not easy to find.

This article will bring you the four most common, simplest and most practical ways to generate QR codes in Python.

pyqrcode implements QR code

What I am showing you is a third-party QR code module. Open source and high efficiency are the mainstream in today's coding industry.

pyqrcode is a QR code generation module. After installation, you can create a simple QR code image with three lines of code.

pip install pyqrcode
Copy after login

After the module is installed, the introductory demo will be displayed directly. In order to generate images, an additional module needs to be installed, namely pip install pypng.

import pyqrcode
import png
qr = pyqrcode.create('梦想橡皮擦')
qr.png('ca.png', scale=5)
Copy after login

Run the code to directly generate a text QR code. Since some sites block the image content of the QR code, you can use your mobile phone to scan the code and test it yourself.

In addition to generating PNG images, you can also directly generate an svg image.

import pyqrcode
import png
qr = pyqrcode.create('梦想橡皮擦')
# qr.png('ca.png', scale=5)
qr.svg("./ca.svg", scale=8, background="white", module_color="#03a9f4")
Copy after login

There are no special explanations for the parameters in the above method. I believe you can learn and master them directly through the parameter names. Detailed parameter descriptions can also be found in the official manual and through a simple search.

import pyqrcode
import png
qr = pyqrcode.create('梦想橡皮擦')
# qr.png('ca.png', scale=5)
# qr.svg("./ca.svg", scale=8, background="white", module_color="#03a9f4")
qr.png('./code.png', scale=5, m
Copy after login

qrcode Implementation of QR code

The second recommended module has the same name as the previous module. It is also a relatively old third-party module, and this module is in actual combat The frequency of mid-term and exit is very high.

pip install qrcode
Copy after login

In order to learn quickly, check the sample code directly:

import qrcode
qr = qrcode.QRCode(
    version=None,
    error_correction=qrcode.constants.ERROR_CORRECT_L,
    border=4,
    box_size=10
)
img = qrcode.make('梦想橡皮擦',version=4,border=4,box_size=12)
img.save('ca.jpg')  # 保存图片
Copy after login

qrcode The most important method in the module is qrcode.QRCode, with simple parameters The description is as follows:

  • version: QR code size, ranging from 1-40;
  • error_correction: QR code error correction Range, the 4 constant values ​​are explained below;
  • box_size: The number of pixels contained in each small grid in the QR code;
  • border : Border, the distance between the QR code and the image border.

QR code error correction range, you can choose 4 constants:

  • ERROR_CORRECT_L: 7% or less of errors will be corrected;

  • ERROR_CORRECT_M (default value): Less than 15% of errors will be corrected;

  • ERROR_CORRECT_Q: Less than 25% of errors will be corrected;

  • ERROR_CORRECT_H: Less than 30% of errors will be corrected.

MyQR implements QR code

Another QR code generation module, the installation command is as follows:

pip install MyQR
Copy after login

This module is relatively young, you need to upgrade pillow to the latest version, use the following command:

pip install pillow>=8.3.2
Copy after login

First look at the ordinary QR code generation:

from MyQR import myqr

myqr.run(words="cacaca", version=9,
         save_name="ca1.png",
         save_dir="./")
Copy after login

A major feature of this QR code module is that it can achieve animated effects. The code is as follows:

from MyQR import myqr

myqr.run(words="https://juejin.cn/user/3966693684027512", version=3, picture="./in.gif", colorized=True,
         save_name="ca.gif",
         save_dir="./")
Copy after login

Animated images are also prepared for you.

run() The main parameters in the method are described as follows:

  • words: QR code text content (not supported Chinese);
  • picture: background picture;
  • colorsize: True, indicating generating color pictures;
  • save_name: The name of the QR code image.

Amazing-QR realizes QR code

can generate ordinary QR code, artistic QR code with pictures (black and white and color), dynamic QR code QR code (black and white and color).

The installation command is as follows:

pip install amzqr
Copy after login

The sample code is also very simple.

# 安装模块后
from amzqr import amzqr
import os
version, level, qr_name = amzqr.run(
    'cacaca',
    version=1,
    level='H',
    picture=None,
    colorized=False,
    contrast=1.0,
    brightness=1.0,
    save_name='ca_amzqr.png',
    save_dir=os.getcwd()
)
Copy after login

Chinese recognition is not very good and needs to be modified. If you think there are too many parameters, you can simplify it directly and only keep the words parameters.

from amzqr import amzqr
amzqr.run(words='https://juejin.cn/user/3966693684027512')
Copy after login

By default, a picture named qrcode.png is generated in the running directory.

【Related recommendations: Python3 video tutorial

The above is the detailed content of How to use Python to create a QR code? Share in multiple ways. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:juejin.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template