出典
[解決!Python]qrcodeモジュールを使ってQRコードを作成するには

↑これが一番早い。

import qrcode

data_qr = "STR$06"

img = qrcode.make(data_qr)

img.save("C:/Users/***/Desktop/str06.png")



出典:

 

■ライブラリ・インストール

pip install qrcode[pil]

■QRコードの設定

細かいカスタマイズをしたい場合はqrcode.QRCodeオブジェクトを生成する際にオプションでサイズやバージョン、誤り訂正レベル等を指定します。

  • box_size:QRコードの各ボックスのピクセル数を設定
  • border:境界線の太さのボックスの数を設定(デフォルト最小4)
  • version:QRコードのバージョンを指定

qrcodeは以下の誤り訂正レベルが指定できますが、50%のレベルSはサポートされていません。デフォルトはERROR_CORRECT_M となります。

  • ERROR_CORRECT_L:約7%以下の誤りを訂正
  • ERROR_CORRECT_M:約15%以下の誤りを訂正
  • ERROR_CORRECT_Q:約15%以下の誤りを訂正
  • ERROR_CORRECT_H:約15%以下の誤りを訂正

以下のコードでは、バージョン7、誤り訂正30%、ボックスサイズ5、ボーダー7でQRコードを生成しています。

1

2

3

4

5

6

7

8

9

10

11

12

import qrcode

 

qr = qrcode.QRCode(

    version=7,

    error_correction=qrcode.constants.ERROR_CORRECT_L,

    box_size=5,

    border=7,

)

qr.add_data('https://www.python.org/')

img = qr.make_image(fill_color="black", back_color="white")

img.show()

img.save("sample-qr.png")



■サンプルコードimport qrcode
img = qrcode.make('QRコードです!')
img.save("qr.png")


■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")