第一種: 生成純文本的二維碼;python
import qrcode # 這裏使用的python的庫 qrcode 固然qrcode 是依賴pillow庫的, 因此第一步固然是安裝相關的模塊 pip install qrcode def make_code(): """ ERROR_CORRECT_L:大約7%或更少的錯誤能被糾正。 ERROR_CORRECT_M(默認):大約15%或更少的錯誤能被糾正。 ROR_CORRECT_H:大約30%或更少的錯誤能被糾正。 """ url = 'https://www.luffycity.com' qr = qrcode.QRCode( version=None, error_correction=qrcode.constants.ERROR_CORRECT_L, box_size=10, border=2, ) qr.add_data(url) qr.make(fit=True) img = qr.make_image() img.save('二維碼.png') make_code()
第二種, 生成帶有logo 圖標的二維碼;url
from PIL import Image import qrcode def make_code(): url = 'https://www.luffycity.com' qr = qrcode.QRCode(version=5, error_correction=qrcode.constants.ERROR_CORRECT_H, box_size=8, border=4) qr.add_data(url) qr.make(fit=True) img = qr.make_image() img = img.convert("RGBA") icon = Image.open("logo.png") img_w, img_h = img.size factor = 4 size_w = int(img_w / factor) size_h = int(img_h / factor) icon_w, icon_h = icon.size if icon_w > size_w: icon_w = size_w if icon_h > size_h: icon_h = size_h icon = icon.resize((icon_w, icon_h), Image.ANTIALIAS) w = int((img_w - icon_w)/2) h = int((img_h - icon_h)/2) icon = icon.convert("RGBA") img.paste(icon, (w, h), icon) # img.show() img.save('logo-qrcode.png') make_code()