کار با QRCode(بارکد) در پایتون :: Mr Python | مستر پایتون

کار با QRCode(بارکد) در پایتون

  • ۲۴۸۸

کار با  QRCode(بارکد) در پایتون

 

درود به همه

 

امروز در خدمت شما هستیم با یه مطلب پایتونی دیگه .

 

QRCode چیست ؟ QRCode یک نوع بارکد دو بعدی است که توسط مربع های مشکی و سفید کوچک اطلاعات را در خود نگهداری میکند . این کد ها توسط بارکد خوان اسکن و خوانده میشود .

تصویر زیر نمونه ای از یک بارکد که حاوی متن MrPython.blog.ir است .

 

 

خب امروز میخوایم ببینیم چطوری میتونیم این بارکد ها رو توی پایتون در ابتدا بسازیم و سپس اطلاعات اونا رو بخونیم . برای اینکار ما نیاز به سه کتابخانه داریم . کتابخانه ی qrcode برای تولید بارکد و کتابخانه ی pyzbar برای خواندن و رمزگشایی بارکد و کتابخانه ی Pillow برای کار با تصویر بارکد.

 

برای نصب این دو کتابخانه از pip استفاده میکنیم .

در لینوکس :‌

MrPython@debian:~$ pip3 install qrcode pyzbar Pillow

در ویندوز :

C:\\> pip install qrcode pyzbar Pillow

 

 خب پس از نصب این دو کتابخانه میریم سراغ کدنویسی .

در اینجا ما دو سورس کد معرفی میکنیم . سورس کد اولی بارکد تولید میکند و سورس کد دومی بارکد تولید شده را میخواند  و رمزگشایی (Decode) میکند .

 

سورس ساخت بارکد :‌

import qrcode
text = "MrPython.blog.ir"
qr = qrcode.make(text)
qr.save("my_qrcode.png")

میبینید که سورس بسیار سادس . اول کتابخونه رو وارد کردیم . بعد یه متغییر به نام text تعریف کردیم و متنی که میخوایم برامون ازش بارکد بسازه رو میزاریم داخلش  . سپس گفتیم از کتابخونه ی qrcode با تابع make برامون یه بار کد بساز که حاوی متن متغییر text باشه و بریز داخل متغییر qr . بعد هم گفتیم فایل رو ذخیره کنه با یه پسوند تصویری png .

 

حالا این برنامه برای ما یه بارکد در فایل تصویری به نام my_qrcode.png ساخت که حاوی متن MrPython.blog.ir است . حالا میخوایم یه سورس بنویسیم همین تصویر رو بخونه و رمزگشایی کنه .

 

سورس خواندن بارکد :

 

from pyzbar.pyzbar import decode
from PIL import Image
picture = Image.open("my_qrcode.png")
qr = decode(picture)
text = qr[0].data.decode()
print("Text : {}".format(text))

خب در ابتدا کتابخانه های مورد نیاز رو وارد کردیم . بعد تصویری که سورس قبل برامون تولید کرد رو باز کردیم ریختیم داخل متغییر picture . سپس با استفاده از متد decode تصویر رو رمزگشایی کردیم و ریختیم داخل متغییر qr . سپس از متغییر qr که حاوی اطلاعات بارکدی بود که خوندیم ، متن ذخیره شده پشت بارکد رو درآوردیم و ریختیم داخل text . بعدم متغییر text رو پرینت کردیم .

 

به همین راحتی .

 

امیدوارم مفید واقع شده باشه .

 

یا خق !

  • مرسی از این آموزش کامل من از شما یه سوالی داشتم 

    میشه سورس کد یه برنامه که از شما آدرس سایت رو 

    بگیره و کو ار کد اون رو ذخیره کنه 

    پاسخ:
    درود بر شما . خواهش میکنم :)
    بله خیلی راحت . کافیه یه input از کاربر بگیرید و سپس به همون روشی که داخل پست گفته شده بارکدش رو داخل یه فایل png ذخیره کنید .
  • کار جالبیه نمیدونم میشه تو کیوی این رو اجرا کرد یانه ولی ایده خوبی برای پیاده سازی هست👌

    دم شماهم گرم😊

     

     

    پاسخ:
    درود :)
    والا اطلاعی از کیوی ندارم :)
    خواهش میکنم :)
  • من برام سواله که چرا ساختنش راحت تر از خوندنشه😂

    پاسخ:
    آفرین رین رین رین رین ....... 😂
    نکته عجیبی بود .👌🏻
  • سلام خدمت شما آقای احمدی

    خیلی مفید و عالی بود واقعاً ممنون از شما

    پاسخ:
    درود بر شما . 
    خواهش میکنم دوست عزیز  :)
  • دمت گرم

     

    پاسخ:
    😁✋
  • ممنون بسیار مفید بود.

    پاسخ:
    درود . خواهش میکنم :)
  • جالب و کاربردی بود (:

    پاسخ:
    درود بر شما
    تشکر 😁
ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی