首頁 >後端開發 >Python教學 >如何使用Python搞個二維碼?多種方法分享

如何使用Python搞個二維碼?多種方法分享

青灯夜游
青灯夜游轉載
2022-10-11 19:39:347407瀏覽

如何使用Python搞個二維碼?以下這篇文章給大家分享多種使用Python實作二維碼的方法。如果你需要用Python搞個二維碼,那應該要收藏這篇部落格吧!

如何使用Python搞個二維碼?多種方法分享

作為合格的 Python 程式設計師,在工作中必然會用到二維碼相關操作,那如何快速的用 Python 實作呢?別急,咱們這篇部落格就為你解決。

暫時用不到也沒關係,按讚 收藏,畢竟這麼全的文章也不好找。

文章會為大家帶來最常見,最簡單,最實用的 4 種 Python 二維碼產生方式。

pyqrcode 實作二維碼

上來為你展示的就是一款第三方二維碼模組,開源高效才是當今程式設計界的主流。

pyqrcode 是一款 老牌 二維碼產生模組了,安裝之後三行程式碼就能搞定一個簡單的二維碼圖片。

pip install pyqrcode

模組安裝之後,直接展示入門 Demo,為了可以產生圖片,還需要額外安裝一個模組,即 pip install pypng

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

運行程式碼,直接產生一個文字二維碼,由於部分網站屏蔽二維碼圖片內容,可自行使用手機進行掃碼測試。

除產生 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")

上述方法中的參數不做特殊說明,相信大家透過參數名稱直接學習掌握,詳細參數說明也可以閱讀官方手冊,進行簡單搜尋即可找到。

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

qrcode 實作二維碼

第二個推薦的模組與上一模組名稱雷同,也是比較老牌的第三方模組,而且這個模組在實戰中出場頻率非常高。

pip install qrcode

為了快速學習,直接查看範例程式碼:

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')  # 保存图片

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_Q:25%以下的錯誤會被修正;
  • ERROR_CORRECT_H:30%以下的錯誤會被修正。

MyQR 實作二維碼

#又一款二維碼產生模組,安裝指令如下所示:

pip install MyQR
這個模組比較年輕,需要將

pillow

升級到最新版本,使用以下指令:

pip install pillow>=8.3.2

先看一下普通的二維碼產生:

from MyQR import myqr

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

這個二維碼模組的一大特色就是可以實現動圖效果,程式碼如下:

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="./")

動圖也給你準備好了。

run()
    方法中主要的幾個參數說明如下:
  • #words
  • :二維碼文字內容(不支持中文);
  • picture
  • :背景圖片;##colorsize
  • :True,表示產生彩色圖;

save_name:二維碼圖片的名字。

Amazing-QR 實作二維碼

#可產生普通二維碼、帶有圖片的藝術二維碼(黑白與彩色)、動態二維碼(黑白與彩色)。

安裝指令如下所示:<pre class="brush:php;toolbar:false;">pip install amzqr</pre>範例程式碼也非常簡單。

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

中文辨識也不是很好,需要進行修改,如果覺得參數過多,可以直接進行簡化,只保留 words 參數即可。

from amzqr import amzqr
amzqr.run(words=&#39;https://juejin.cn/user/3966693684027512&#39;)

預設在執行目錄產生一個名稱為 qrcode.png 的圖片。

###【相關推薦:###Python3影片教學### 】###

以上是如何使用Python搞個二維碼?多種方法分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:juejin.cn。如有侵權,請聯絡admin@php.cn刪除