1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        使用python創(chuàng)建和讀取二維碼

        共 2004字,需瀏覽 5分鐘

         ·

        2021-08-28 09:42


        什么是二維碼?

        QR碼是機器可讀的二維像素化條形碼,可用于存儲各種信息。


        二維碼是由日本汽車制造商Denso Wave 的工程師Masahiro Hara在 1994 年發(fā)明的,用于跟蹤汽車零件的運動。二維碼在 2010 年代后期隨著手機光學功能的改進及其廣泛采用而越來越受歡迎。

        如今,二維碼被廣泛用于各種應(yīng)用,例如在線支付、查看酒店菜單、共享 wifi 密碼、獲取產(chǎn)品的價格和其他詳細信息等。二維碼變得如此流行,以至于現(xiàn)在每部新智能手機都內(nèi)置了二維碼閱讀器。


        在本文中,我們將學習如何使用 python 讀取和生成二維碼。


        生成二維碼

        • 安裝二維碼模塊;

        • 我們將使用 qrcode 包來生成二維碼;

        • 第一步是使用 pip 命令安裝包。


        pip install qrcode


        pip安裝二維碼

        可以在包的PYPI 主頁中訪問包的完整文檔。

        簡單的二維碼:


        通過使用qrcode的make函數(shù)并將數(shù)據(jù)作為參數(shù)傳遞,可以生成一個簡單的二維碼。下面的代碼生成一個 QR 碼,上面寫著“Hello World”。


        #Import Library

        import qrcode

        #Generate QR Code

        img=qrcode.make('Hello World')

        img.save('hello.png')



        Hello World 的二維碼


        你可以用你的智能手機閱讀上面的代碼。

        注意:請勿使用手機讀取隨機二維碼,因為其中可能包含惡意代碼/鏈接。



        高級二維碼:


        可以使用具有以下參數(shù)的QRCode對象自定義二維碼 :

        1.version :

        • 有 40 個版本的 QR 碼,用于控制代碼的大小。
          1 是最小的,40 是最大的。
          版本 1 將創(chuàng)建一個 21X21 矩陣二維碼。


        2.error_correction:

        此參數(shù)控制用于二維碼的糾錯。這從 7% 到 30% 的錯誤糾正不等,如下所示:

        ERROR_CORRECT_L:高達 7%
        ERROR_CORRECT_M:高達 15%
        ERROR_CORRECT_Q:高達 25%
        ERROR_CORRECT_H:高達 30%

        3.box_size:

        該參數(shù)控制二維碼每個框內(nèi)的像素數(shù)

        4.border:

        此參數(shù)控制邊框的粗細。默認邊框為 4 像素厚。

        QRCode 對象有以下功能可用于創(chuàng)建 QR 碼

        1.add data

        二維碼的內(nèi)容可以作為參數(shù)傳遞給這個函數(shù)。

        2. 制作

        如果你不知道哪個版本的QR碼的使用,該版本可以自動設(shè)置:

        一。將版本參數(shù)設(shè)置為None和
        b。塞汀合適的參數(shù)化妝真。

        3.make image

        此函數(shù)生成二維碼。它還可以用于使用fill_color和back_color參數(shù)設(shè)置二維碼的填充顏色和背景顏色。

        以下代碼生成一個二維碼,指向我的中型個人資料。

        qr = qrcode.QRCode(
            version=1,
            error_correction=qrcode.constants.ERROR_CORRECT_L,
            box_size=10,
            border=4,
        )
        qr.add_data("https://abhijithchandradas.medium.com/")
        qr.make(fit=True)
        img = qr.make_image(fill_color="red", back_color="black")
        img.save("medium.png")

        高級二維碼


        讀取二維碼:


        我們將使用 OpenCV 來讀取二維碼。如果沒有安裝包,可以如下安裝:

        pip install cv2

        二維碼可以使用:

        OpenCV的 QRCodeDetector 對象的 detectAndDecode 函數(shù)進行解碼。

        import cv2
        img=cv2.imread("medium.png")
        det=cv2.QRCodeDetector()
        val, pts, st_code=det.detectAndDecode(img)
        print(val)
        Output:
        https://abhijithchandradas.medium.com/


        detectAndDecode 函數(shù)返回二維碼的內(nèi)容、框角坐標和二值化二維碼。

        原文鏈接:https://towardsdatascience.com/create-and-read-qr-code-using-python-9fc73376a8f9

        文章轉(zhuǎn)載:Python編程學習圈
        (版權(quán)歸原作者所有,侵刪)

        點擊下方“閱讀原文”查看更多

        瀏覽 78
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            欧美三级无码 | 高清无码免费看 | 国产成人精品麻豆 | 情趣玩具体验h道具玩h | 国产精品一品21区 | 韩国国产精品 | 国产美女色黄A片视频老师 | av天天干 | 干B网站 国产熟女乱伦 | 永久免费 网站在线 |