PythonでQRコードを生成する方法をまとめました。リストから大量のQRコードを一括作成するサンプルコードも紹介しています。
PythonでQRコードを生成するには?
PythonでQRコードを生成するには、qrcodeというライブラリがおすすめです。
qrcode
QR Code image generator
qrcodeライブラリを使用することで、いともかんたんにQRコードを生成することができます。わずか数行のスクリプトだけで任意の文字列のQRコードを生成できます。
qrcodeライブラリのインストールはpipコマンドで行なえますので、あらかじめインストールしておきましょう。
pip install qrcode[pil]
QRコードを作成してみます。
import qrcode
img = qrcode.make('QRコードです!')
img.save("qr.png")
生成完了!たった3行のスクリプトでQRコードを生成できました!
ちなみにサンプルのように日本語を含むQRコードの生成にも対応しています。データはUTF-8でエンコードされているため、スマホのQRコードアプリはもちろん、OpenCVのQRCodeDecoderでも読み取ることができます。
サイズやバージョン・色を指定することもできる!
QRCodeクラスを使用すると、生成するQRコードのサイズやバージョン・背景色なども指定することができます。
import qrcode
qr = qrcode.QRCode(
version=1,
error_correction=qrcode.constants.ERROR_CORRECT_L,
box_size=3,
border=4,
)
qr.add_data("QRコードです!")
qr.make(fit=True)
img = qr.make_image(fill_color="black", back_color="white")
背景には単色だけではなく、任意の画像を埋め込むこともできます。
qr.make_image(image_factory=StyledPilImage, embeded_image_path="/path/to/image.png")
詳細は公式ドキュメントをご参照ください。
qrcode
QR Code image generator
QRコードを一括生成する
リスト(配列)にセットした値からQRコードを一括生成するサンプルをご紹介します。
import qrcode
# 生成したいQRコードの文字列
codes=[
"あ","い","う"
]
# QRコードを一括作成
for i in range(len(codes)):
img = qrcode.make(codes[i])
img.save(codes[i]+".png")
コメント