Wie erstelle ich mit Python einen QR-Code? Teilen Sie es auf verschiedene Arten

青灯夜游
Freigeben: 2022-10-20 19:30:39
nach vorne
7378 Leute haben es durchsucht

Wie erstelle ich mit Python einen QR-Code? Im folgenden Artikel werden verschiedene Methoden zur Verwendung von Python zur Implementierung von QR-Codes vorgestellt. Wenn Sie Python zum Erstellen eines QR-Codes benötigen, sollten Sie diesen Blog mit einem Lesezeichen versehen!

Wie erstelle ich mit Python einen QR-Code? Teilen Sie es auf verschiedene Arten

Als qualifizierter Python-Programmierer werden Sie bei Ihrer Arbeit zwangsläufig Vorgänge im Zusammenhang mit QR-Codes verwenden. Wie können Sie diese also schnell in Python implementieren? Machen Sie sich keine Sorgen, unser Blog wird das Problem für Sie lösen.

Es spielt keine Rolle, ob Sie ihn vorerst nicht benötigen und zu Ihren Favoriten hinzufügen. Schließlich ist ein so umfassender Artikel schwer zu finden.

Dieser Artikel stellt Ihnen die 4 häufigsten, einfachsten und praktischsten Möglichkeiten zum Generieren von QR-Codes in Python vor.

pyqrcode implementiert QR-Code

Was ich Ihnen zeige, ist ein QR-Code-Modul eines Drittanbieters. Open Source und hohe Effizienz sind in der heutigen Codierungswelt der Mainstream.

pyqrcode ist ein QR-Code-Generierungsmodul der alten Marke. Nach der Installation können Sie ein einfaches QR-Code-Bild mit drei Codezeilen erstellen. pyqrcode 是一款 老牌 二维码生成模块了,安装之后三行代码就能搞定一个简单的二维码图片。

pip install pyqrcode
Nach dem Login kopieren

模块安装之后,直接展示入门 Demo,为了可以生成图片,还需要额外安装一个模块,即 pip install pypng

import pyqrcode
import png
qr = pyqrcode.create('梦想橡皮擦')
qr.png('ca.png', scale=5)
Nach dem Login kopieren

运行代码,直接生成一个文本二维码,由于部分站点屏蔽二维码图片内容,可自行使用手机进行扫码测试。

除生成 PNG 图片外,还可以直接生成一个 svg 图片。

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

上述方法中的参数不做特殊说明,相信大家通过参数名直接学习掌握,详细参数说明也可以阅读官方手册,进行简单搜索即可找到。

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
Nach dem Login kopieren

qrcode 实现二维码

第二个推荐的模块与上一模块名称雷同,也是比较老牌的第三方模块,而且该模块在实战中出场频率非常高。

pip install qrcode
Nach dem Login kopieren

为了快速学习,直接查看示例代码:

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')  # 保存图片
Nach dem Login kopieren

qrcode 模块中最重要的方法是 qrcode.QRCode,其参数简单说明如下:

  • version:二维码大小,1-40 不等;
  • error_correction:二维码纠错范围,4 个常量值在下文说明;
  • box_size:二维码中每个小格子包含的像素数;
  • border:边框,二维码与图片边界的距离。

二维码纠错范围,可以选择 4 个常量:

  • ERROR_CORRECT_L: 7%以下的错误会被纠正;

  • ERROR_CORRECT_M (默认值): 15%以下的错误会被纠正;

  • ERROR_CORRECT_Q:25%以下的错误会被纠正;

  • ERROR_CORRECT_H:30%以下的错误会被纠正。

MyQR 实现二维码

又一款二维码生成模块,安装命令如下所示:

pip install MyQR
Nach dem Login kopieren

该模块比较年轻,需要将 pillow 升级到最新版本,使用如下命令:

pip install pillow>=8.3.2
Nach dem Login kopieren

先看一下普通的二维码生成:

from MyQR import myqr

myqr.run(words="cacaca", version=9,
         save_name="ca1.png",
         save_dir="./")
Nach dem Login kopieren

该二维码模块的一大特色就是可以实现动图效果,代码如下:

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="./")
Nach dem Login kopieren

动图也给你准备好了。

run() 方法中主要的几个参数说明如下:

  • words:二维码文本内容(不支持中文);
  • picture:背景图片;
  • colorsize:True,表示生成彩图;
  • save_name:二维码图片的名字。

Amazing-QR 实现二维码

可生成普通二维码、带图片的艺术二维码(黑白与彩色)、动态二维码(黑白与彩色)。

安装命令如下所示:

pip install amzqr
Nach dem Login kopieren

示例代码也非常简单。

# 安装模块后
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()
)
Nach dem Login kopieren

中文识别也不是很好,需要进行修改,如果觉得参数过多,可以直接进行简化,只保留 words 参数即可。

from amzqr import amzqr
amzqr.run(words='https://juejin.cn/user/3966693684027512')
Nach dem Login kopieren

默认在运行目录生成一个名称为 qrcode.pngrrreee

Nach der Installation des Moduls wird direkt die Einführungsdemo angezeigt. Um Bilder zu generieren, muss ein zusätzliches Modul installiert werden, nämlich pip install pypng.

rrreeeFühren Sie den Code aus und generieren Sie direkt einen Text-QR-Code. Da einige Websites den Bildinhalt des QR-Codes blockieren, können Sie den Code mit Ihrem Mobiltelefon scannen und selbst testen.

Neben der Generierung von PNG-Bildern können Sie auch direkt ein SVG-Bild generieren. 🎜rrreee🎜Es gibt keine speziellen Erklärungen für die Parameter in der oben genannten Methode. Ich glaube, Sie können sie direkt über die Parameternamen lernen und beherrschen, indem Sie eine einfache Suche durchführen. 🎜rrreee

🎜qrcode implementiert QR-Code🎜🎜🎜Das zweite empfohlene Modul hat den gleichen Namen wie das vorherige Modul. Es handelt sich ebenfalls um ein relativ altes Modul eines Drittanbieters, und dieses Modul ist es auch Wird im tatsächlichen Kampf eingesetzt. Die Häufigkeit des Auftretens ist sehr hoch. 🎜rrreee🎜Um schnell zu lernen, schauen Sie sich direkt den Beispielcode an: 🎜rrreee🎜qrcode Die wichtigste Methode im Modul ist qrcode.QRCode, und ihre Parameter werden kurz erläutert wie folgt beschrieben: 🎜
  • version: QR-Code-Größe, im Bereich von 1 bis 40;
  • error_correction: QR-Code-Fehlerkorrektur Bereich, 4 Konstanten Der Wert wird unten erklärt:
  • box_size: Die Anzahl der Pixel, die in jedem kleinen Raster im QR-Code enthalten sind; Grenze: Grenze, der Abstand zwischen dem QR-Code und dem Bildrand.
🎜QR-Code-Fehlerkorrekturbereich, Sie können 4 Konstanten auswählen: 🎜
  • 🎜ERROR_CORRECT_L: Fehler unter 7 % werden korrigiert; 🎜
  • 🎜ERROR_CORRECT_M (Standardwert): weniger als 15 % der Fehler werden korrigiert; 🎜
  • 🎜ERROR_CORRECT_Q: weniger als 25 % der Fehler werden korrigiert 🎜
  • li>
  • 🎜ERROR_CORRECT_H: Weniger als 30 % der Fehler werden korrigiert. 🎜

🎜MyQR implementiert QR-Code🎜🎜🎜Ein weiteres QR-Code-Generierungsmodul. Der Installationsbefehl lautet wie folgt: 🎜rrreee🎜Dieses Modul ist relativ 🎜jung 🎜, Sie müssen pillow auf die neueste Version aktualisieren, verwenden Sie den folgenden Befehl: 🎜rrreee🎜Schauen Sie sich zunächst die normale QR-Code-Generierung an: 🎜rrreee🎜Eine Hauptfunktion dieses QR-Code-Moduls ist die Animation Effekt erzielt werden kann, lautet der Code wie folgt: 🎜rrreee🎜Die Animation ist auch für Sie vorbereitet. 🎜🎜run() Die Hauptparameter der Methode werden wie folgt beschrieben: 🎜
  • words: Textinhalt des QR-Codes (Chinesisch wird nicht unterstützt);
  • picture: Hintergrundbild
  • colorsize: True, zeigt an, dass Farbbilder generiert werden
  • save_name: Der Name des QR-Code-Bildes.

🎜Amazing-QR implementiert QR-Code🎜🎜🎜 kann gewöhnliche QR-Codes und künstlerische QR-Codes mit Bildern (Schwarzweiß und Farbe) generieren, dynamisch QR-Code (Schwarzweiß und Farbe). 🎜🎜Der Installationsbefehl sieht so aus: 🎜rrreee🎜Der Beispielcode ist auch sehr einfach. 🎜rrreee🎜Die chinesische Erkennung ist nicht sehr gut und muss geändert werden. Wenn Sie der Meinung sind, dass es zu viele Parameter gibt, können Sie es direkt vereinfachen und nur den Parameter words beibehalten. 🎜rrreee🎜Standardmäßig wird im laufenden Verzeichnis ein Bild mit dem Namen qrcode.png generiert. 🎜🎜【Verwandte Empfehlung: 🎜Python3-Video-Tutorial🎜】🎜

Das obige ist der detaillierte Inhalt vonWie erstelle ich mit Python einen QR-Code? Teilen Sie es auf verschiedene Arten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:juejin.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage