Python問題集を解いてみよう!!

【Python】QRコードを作成したい

当ページのリンクには広告が含まれています。
【Python】QR コードを作成したい

QR コード(Quick Response Code)はスマートフォンのカメラで簡単に読み取れる2次元バーコードです。情報を素早く伝達できるため、様々な場面で利用されています。本記事では、Python を使って QR コードを作成する方法を解説します。

Python を使用する利点は簡単に実装でき、カスタマイズの自由度が高いことです。また、多くのライブラリが利用可能で、開発効率が良いのも特徴です。

おすすめのレンタルサーバー
目次

必要なライブラリ

Python で QR コードを作成するために今回はqrcodeライブラリを使用します。
以下のコマンドでインストールできます。

pip install qrcode[pil]

[pil]を指定することで、画像処理に必要な Pillow ライブラリも同時にインストールされます。

基本的なQRコードの作成

まずは、シンプルなテキスト QR コードを生成し、画像として保存する方法を見てみましょう。

import qrcode

# QRコードに埋め込むURL
url = "https://www.taklog.info/"

# QRコードの生成
qr = qrcode.QRCode(version=1, box_size=10, border=5)
qr.add_data(url)
qr.make(fit=True)

# QRコードの画像を作成
img = qr.make_image(fill_color="black", back_color="white")

# 画像の保存
img.save("basic_qr.png")

このコードを実行すると「basic_qr.png」という名前の QR コード画像が生成されます。

basic_qr.png

QR コードの色の変更

QR コードの色をカスタマイズすることで、より目を引くデザインにすることができます。以下のコードでは、QR コードの色を変更する方法を示しています。

import qrcode

url = "https://www.taklog.info/"

qr = qrcode.QRCode(version=1, box_size=10, border=5)
qr.add_data(url)
qr.make(fit=True)

# フィルカラーと背景色を変更
img = qr.make_image(fill_color="blue", back_color="yellow")

img.save("colored_qr.png")

このコードでは、QR コードの色を青、背景色を黄色に設定しています。

カラー QR コードを生成する場合、コントラストが十分であることを確認してください。
読み取り精度に影響する可能性があります。

colored_qr.png

QRコードのモジュール形状の変更

qrcodeライブラリを使用すると、QR コードのモジュール(QR コードを構成する小さな四角形)の形状を変更することができます。以下のコードでは、モジュールの形状を円形に変更しています。

import qrcode
from qrcode.image.styledpil import StyledPilImage
from qrcode.image.styles.moduledrawers import RoundedModuleDrawer

url = "https://www.taklog.info/"

qr = qrcode.QRCode(version=1, box_size=10, border=5)
qr.add_data(url)
qr.make(fit=True)

# モジュールの形状を円形に変更
img = qr.make_image(
    image_factory=StyledPilImage, module_drawer=RoundedModuleDrawer()
)

img.save("rounded_qr.png")

このコードを実行するとモジュールが丸みを帯びた QR コードが生成されます。

rounded_qr.png

エラー訂正レベルの変更

QR コードには4つのエラー訂正レベル(L, M, Q, H)があります。エラー訂正レベルを高くすると、QR コードが一部損傷しても読み取りが可能になりますが、データ容量は減少します。以下のコードでは、エラー訂正レベルを設定する方法を示しています。

import qrcode

url = "https://www.taklog.info/"

# エラー訂正レベルをHに設定
qr = qrcode.QRCode(
    version=1,
    error_correction=qrcode.constants.ERROR_CORRECT_H,
    box_size=10,
    border=5,
)
qr.add_data(url)
qr.make(fit=True)

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

img.save("high_error_correction_qr.png")

このコードではエラー訂正レベルを最高レベルの「H」に設定しています。

high_error_correction_qr.png

Google Colaboratory

本記事に掲載しているコードは Google Colaboratory で動作を確認しています。

下記リンクからアクセスして、ご自身の Google ドライブにコピーしていただければ、すぐに実行できます。

動作を確認した時の Python、ライブラリのバージョンは以下でした。

  • Python 3.10.12
  • qrcode 7.4.2
  • Pillow 9.4.0

おわりに

今回はqrcodeライブラリを使用した QR コードの作成方法をご紹介しました。

Python を使用して QR コードを生成することで簡単にカスタマイズが可能で、様々な情報を埋め込むことができます。本記事で紹介した基本的な方法を応用することで、ビジネスカードやイベント告知など、多様な用途に活用できるでしょう。

QR コードは、印刷物やデジタル媒体で幅広く使用されています。Python を使用して QR コードを自動生成することで、大量の QR コードを効率的に作成したり、動的なコンテンツに対応した QR コードを生成したりすることも可能です。

さらに学習を深めたい方は、qrcodeライブラリの公式ドキュメントを参照することをおすすめします。QR コードの世界は奥が深く、まだまだ探求の余地があります。ぜひ、自分だけのユニークな QR コードを作成してみてください!

以上です。

スポンサーリンク

【Python】QR コードを作成したい

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!

コメント

コメントする

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

目次