Python QR Kod Okuma

python qr code okuma
Bu yazım içerisinde python qr code okuma, python ile qr kod okuma ile ilgili bilgi edinebilirsiniz.

Python QR Code Okuma

Bir önceki yazımda python ile qr kod oluşturma işleminin nasıl yapılabileceğini anlatmaya çalışmıştım. Eğer o yazımı okumadıysanız öncelikle onu okumanızı öneriyorum. Bu yazımda ise, orada oluşturduğumuz qr kodların okunmasının python ile nasıl yapılabileceğinden bahsetmeye çalıştım.


Python QR Kod Okuma

Python ile qr kodlarımızı okuyabilmemiz için iki farklı kütüphaneye ihtiyaç duyuyoruz. Öncelikle bunların yüklemesini gerçekleştirelim.

İlk olarak ihtiyaç duyduğumuz paketlerden biri pyzbar paketi. Bu paketi decode işlemi yapabilmek için kullanacağız. İkinci olarak ihtiyaç duyduğumuz paket ise pillow paketi. Resim dosyası üzerinden bir okuma işlemi yapacağımız için bu pakete ihtiyacımız var. Aşağıdaki kodu, terminalimize yazalım ve enter tuşuna basarak çalıştıralım.

pip install pyzbar pillow

Eğer paketleri önceden yüklediyseniz uyarı alacaksanız ancak önceden bu paketler ile ilgili bir yükleme işlemi gerçekleştirmediyseniz kurulum işleminin tamamlanmasını beklemelisiniz.

Paketlerimizin kurulum işlemini başarıyla tamamlandıktan sonra, bu paketleri projemize dahil ediyoruz.

from pyzbar import pyzbar
from PIL import Image

Bir değişken oluşturdum. Pyzbar altından decode fonksiyonu ile okuma gerçekleştirdim. Ancak bu okuma işlemini bir fotoğraf üzerinden yapacağım için Image.open fonksiyonundan yararlanmam gerekiyordu. Aşağıdaki kod bloğunda görüldüğü gibi bir kod yazdım.

qr = pyzbar.decode(Image.open('qrcode1.png'))

Qr kod resmim kod dosyam ile aynı dizinde olduğundan doğrudan ismini girerek açabiliyorum. Ama sizin qr kod fotoğrafınız farklı bir dizinde ise bunun yolunu belirtmeniz gerekir.

Daha sonrasında ise bunu konsolumuzda çıktı olarak alabilmek için print dedikten sonra değişkenimi değer olarak verdim.

print(qr)

Kod bloğumuzu çalıştıralım. Gördüğünüz gibi bir dizi şeklinde qr kodumuzun sahip olduklarını bize döndürdü. Bizim ihtiyaç duyduğumuz şey ise data altında yer alan bilgi. Binary şeklinde olduğu için başında 'b' yer alıyor. Bunun da dönüştürme işlemini yaparız o sorun değil.

print(qr[0].data.decode('ascii'))

Yukarıdaki kod sayesinde, qr değişkenimizin sıfırıncı indeksinde yer alan veriyi çektik. Burada data altında yer alan veriyi aldık ve binary formatından dönüşüm sağlayabilmek için decode fonksiyonunu kullanıp formatını 'ascii' olarak belirledik.

from pyzbar import pyzbar
from PIL import Image

qr = pyzbar.decode(Image.open('qrcode1.png'))

print(qr[0].data.decode('ascii'))

Bu şekilde çalıştırdığımızda istediğimiz şey olan qr kod içindeki dataya erişmiş olduk.

Yazımda bu kadarını anlatmanın yeterli olduğunu düşünüyorum. Youtube'da yayınladığım videomda aynı fotoğraf üzerinde birden fazla qr kod var ise onları nasıl okuyabileceğimiz ile ilgili bir anlatım gerçekleştirdim. Kendini kod yazmada geliştirmek isteyenler için tavsiye ederim. Bu paragraf altına o videoyu da yerleştiriyor olacağım.


Videonun ikinci kısmında yazdığım kodlar ise aşağıdaki kod bloğunda mevcut.

from pyzbar import pyzbar
from PIL import Image

qr = pyzbar.decode(Image.open('qrcodelar.png'))
uzunluk = len(qr)

while True:
    uzunluk = uzunluk - 1
    if (uzunluk == -1):
        break
    datalarım = qr[uzunluk].data.decode('ascii')
    print(datalarım) 

Umarım yeterince anlaşılır bir yazı ve video olmuştur. Eğer anlatımım işinize yaradıysa videoyu beğenmeyi ve yazılıma meraklıysanız kanala abone olup bildirimleri açmayı unutmayın. 

Anlamadığınız yerler için gerek Youtube üzerinden gerekse bu yazının altında yer alan yorumlar kısmından, özel istekler için ise bu sitenin iletişim sayfasından bana ulaşabilirsiniz. Başka bir yazımda ve videomda tekrar görüşmek üzere.
Elektrik Elektronik Mühendisiyim. Bu alanlarda ödev, proje yaptırmak isterseniz veya özel ders almak isterseniz sitemin iletişim sayfasından benimle iletişime geçebilirsiniz.

Yorum Gönder