top of page

Python'da Kendi QR kodunu oluştur!

QR kod bazılarımızın bildiği gibi siyah ve beyazdan oluşan uzaktan bakıldığında anlamsızmış gibi duran çizgi parçacıkları. En basitinden Arama motoruna QR kod nedir yazarsak çıkacak görseller bunlar olacaktır.


QR kod nedir?


Yine klasik girişimizi yaptık. Python ile ilgili nasıl kodun yazıldığında geçmeden önce QR kod nedir kısa yazı yazmak istiyorum. Amacı kod olanlar direk aşağı inebilirler. Python nedir ile ilgili daha önce yazdığım yazıyıda okumak isteyenler için https://www.dusunurlerdergisi.com/post/pythonda-opencv-kullanarak-nesne-algilama tıklamanız yeterli.



QR Kod Nedir?


QR kod (Quick Response code), 1990'ların sonlarında Japon otomobil endüstrisinde parça takibi için geliştirilmiş bir matris barkod sistemidir. QR kodları, geleneksel barkodlara kıyasla daha fazla veriyi depolayabilme kapasitesine sahiptir ve daha hızlı bir şekilde okunabilirler.


Bir QR kodu, siyah ve beyaz karelerden oluşan bir matristir. Bu karelerin düzeni ve içerdikleri bilgi, QR kodunun depoladığı veriyi temsil eder. QR kodları genellikle internet sitelerinin URL'leri, metin, kişisel bilgiler, WiFi ağ bilgileri, ürün detayları gibi çeşitli bilgileri içerebilirler.

QR kodlarının avantajları şunlardır:

  1. Hızlı okunabilirlik: Diğer barkod türlerine kıyasla daha hızlı okunabilirler.

  2. Büyük veri kapasitesi: QR kodları daha fazla bilgiyi depolayabilir.

  3. Hata düzeltme yeteneği: QR kodları, bazı hataları otomatik olarak düzeltebilecek şekilde tasarlanmıştır.

  4. Çeşitli kullanım alanları: QR kodları, pazarlama, reklamcılık, endüstriyel ürün takibi, mobil ödeme ve daha birçok alanda kullanılabilir.

Bugünlerde, QR kodları genellikle cep telefonu kameraları veya QR kod okuyucu uygulamaları gibi mobil cihazlar aracılığıyla okunur. QR kodları, kullanıcıyı bir web sitesine yönlendirmek, bilgi paylaşmak veya işlem yapmak gibi birçok farklı amaç için kullanılabilir.


QR Kod altında yatan matematik için (Bakmak isteyen indirebilir).



QR code
.pdf
PDF dosyasını indir • 1.94MB


Biz asıl konumuza gelelim. Python'da nasıl kendi QR kodumuzu oluşturabiliriz?



Adım 1: QR kod kütüphanesini dahil etmemiz gerekiyor.

import qrcode

Adım 2: Kullanıcıdan QR koda dönüştürmesini istediği adresin girdisini almalıyız.

 # Kullanıcıdan URL adresini al
    url = input("QR kodunu oluşturmak istediğiniz URL'yi girin: ")

Adım 3: QR kod oluşturma ve ekranda gösterme işlemlerini gerçekleştiren Fonksiyon yazıyoruz.

 def qr_kod_olustur(url, file_name="olusturulanQRkod.png"):
    # QR kodu oluştur
    qr = qrcode.QRCode(
        version=1,
        error_correction=qrcode.constants.ERROR_CORRECT_L,
        box_size=10,
        border=4,
    )
    qr.add_data(url)
    qr.make(fit=True)

    # QR kodunu resim olarak oluştur
    img = qr.make_image(fill_color="black", back_color="white")

    # QR kodunu ekranda göster
    img.show()

    # QR kodunu dosyaya kaydet
    img.save(file_name)

Son Adım: En son kullanıcıdan aldığımız Url bilgisiyle fonksiyonu çağırıyoruz

 if __name__ == "__main__":
    # Kullanıcıdan URL adresini al
    url = input("QR kodunu oluşturmak istediğiniz URL'yi girin: ")

    # QR kodunu oluştur ve ekranda göster, oluşturulanQRkod.png olarak kaydet
    qr_kod_olustur(url) # <------ BU kısım

Kodun Tamamı


import qrcode

def qr_kod_olustur(url, file_name="olusturulanQRkod.png"):
    # QR kodu oluştur
    qr = qrcode.QRCode(
        version=1,
        error_correction=qrcode.constants.ERROR_CORRECT_L,
        box_size=10,
        border=4,
    )
    qr.add_data(url)
    qr.make(fit=True)

    # QR kodunu resim olarak oluştur
    img = qr.make_image(fill_color="black", back_color="white")

    # QR kodunu ekranda göster
    img.show()

    # QR kodunu dosyaya kaydet
    img.save(file_name)

if __name__ == "__main__":
    # Kullanıcıdan URL adresini al
    url = input("QR kodunu oluşturmak istediğiniz URL'yi girin: ")

    # QR kodunu oluştur ve ekranda göster, oluşturulanQRkod.png olarak kaydet
    qr_kod_olustur(url)

Denediğinizde örnek görselleri yorum olarak atabilirsiniz. Kendinize dikkat ediniz.

Sevgiler ile,


Editor Besat Arif Çıngar

450 görüntüleme1 yorum
bottom of page