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.