QR碼:使用Python創建和應用的綜合指南
QR碼無處不在,主要用於付款,在餐館,加油站和商店中發現。但是,他們的應用遠遠超出了這一點。他們的關鍵優勢在於他們能夠將信息緊密存儲在易於掃描的圖像中的能力。本指南將探索QR碼功能,使用Python創建以及不同的現實世界應用程序。
學習目標:
本文是數據科學博客馬拉鬆的一部分。
目錄:
什麼是QR碼?
快速響應(QR)代碼是二維矩陣條形碼,能夠存儲各種數據類型,例如URL,文本,聯繫方式或Wi-Fi憑據。 “快速響應”指定突出了它們的快速,高速解碼能力。它們通常由在白色背景上以方形圖案排列的黑色正方形組成。與一維條形碼不同,QR碼都水平和垂直存儲數據,從而顯著增加了存儲容量。
由Denso Wave於1994年發明的,供豐田集團(Toyota Group)在製造過程中跟踪汽車零件,其存儲大量數據和快速掃描時間的能力推動了他們在各個部門的廣泛採用。
QR碼提供了幾個關鍵優勢:
與Python的QR碼
本節使用Python演示了QR碼生成。我們利用qrcode
庫從簡單的QR碼到更自定義的版本。確保已安裝它:
PIP安裝QRCode [pil]
此示例創建一個具有默認設置的基本QR碼:
導入QRCODE 從PIL導入圖像 數據=“歡迎來到QR碼教程” qr = qrcode.qrcode(qrcode( 版本= 1, box_ize = 10, 邊界= 4 ) qr.add_data(數據) qr.make(fit = true) img = qr.make_image(fill ='black',back_color ='white') img.show() img.save('simple_qr_code.png')
參數: version
(代碼大小), box_size
(框大小), border
(邊框厚度)。
通過修改前景和/或背景顏色來增強視覺吸引力:
導入QRCODE 從PIL導入圖像 數據=“歡迎來到QR碼教程” qr = qrcode.qrcode(qrcode( 版本= 1, box_ize = 10, 邊界= 4 ) qr.add_data(數據) qr.make(fit = true) img_colored = qr.make_image(fill_color ='darkgreen',back_color ='lightyellow') img_colored.show() img_colored.save('custom_color_qr_code.png')
此示例生成了鏈接到分析Vidhya網站的QR碼:
導入QRCODE 從PIL導入圖像 qr = qrcode.qrcode(qrcode( 版本= 5, box_ize = 10, 邊界= 4 ) qr.add_data(“ https://www.analyticsvidhya.com/”) qr.make(fit = true) img = qr.make_image(fill ='black',back_color ='white') img.save('qr_code_analyticsvidhya.png') img.show()
此示例為Analytics Vidhya QR碼添加了徽標:
導入QRCODE 從PIL導入圖像 #...(如示例3中的QR碼生成)... 徽標= image.open('av_logo.png') logo_size = 100 logo = logo.resize((logo_size,logo_size),image.resampling.lanczos) pos =((img.size [0] - logo_size)// 2,(img.size [1] - logo_size)// 2) img.paste(徽標,pos,mask =徽標) img.save('qr_code_with_analyticsvidhya_logo.png') img.show()
示例徽標:
結果QR碼:
此示例使用OPENCV從圖像解碼QR碼:
導入CV2 image = cv2.imread('qr_code_with_analyticsvidhya_logo.png') 檢測器= cv2.qrcodedetector() 數據,vertices_array,_ = detector.detectanddecode(image) 如果Vertices_array不是沒有: 打印(f“解碼數據:{data}”) 別的: 打印(“未檢測到QR碼。”)
迷你項目:創建Wi-Fi QR代碼
該項目創建一個包含Wi-Fi憑據的QR碼。使用適當的系統命令獲取Wi-Fi SSID,安全類型和密碼(用您的實際憑據替換佔位符):
導入QRCODE wifi_ssid =“ your_ssid” wifi_password =“ your_password” wifi_security =“ wpa2” wifi_data = f“ wifi:t:{wifi_security}; s:{wifi_ssid}; p:{wifi_password} ;; qr = qrcode.qrcode(qrcode( 版本= 1, error_correction = qrcode.constants.error_correct_l, box_ize = 10, 邊界= 4 ) qr.add_data(wifi_data) qr.make(fit = true) img = qr.make_image(fill ='black',back_color ='white') img.save('wifi_qr_code.png') img.show()
掃描QR碼
使用智能手機相機或QR掃描儀應用程序掃描生成的QR碼,以連接到Wi-Fi網絡。
QR碼的實際應用
Wi-Fi QR碼在公共空間(咖啡館,圖書館),房屋和業務方面有益於方便的網絡訪問。
結論
本指南為為各種應用程序創建和利用QR碼提供了基礎。
關鍵要點
qrcode
庫簡化了QR碼的創建和自定義。常見問題
(與原始文本相同的常見問題解答)
(注意:圖像URL保持不變。)
以上是使用Python的主QR碼創建和自定義的詳細內容。更多資訊請關注PHP中文網其他相關文章!