成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Python玩轉二維碼,炫酷!

開發 前端
二維碼(Quick Response Code)幾乎已經滲透到我們日常生活的每一個角落。本文分享如何使用Python生成各種炫酷二維碼。

二維碼(Quick Response Code)幾乎已經滲透到我們日常生活的每一個角落。本文分享如何使用Python生成各種炫酷二維碼。

二維碼(Quick Response Code)幾乎已經滲透到我們日常生活的每一個角落。

二維碼是 1994 年發明的一種矩陣條形碼。

實際上,二維碼通常包含指向網站或應用程序的定位器、標識符或跟蹤器的數據。

二維碼使用四種標準化編碼模式(數字、字母數字、字節/二進制、漢字)來高效存儲數據。

二維碼的結構

從上圖可以看出,二維碼結構整體分為功能模式和編碼區。功能模式細分為:空白區、位置探測圖形、分隔符、圖形定位、圖形矯正;而編碼區又細分為:格式信息、版本信息、數據、糾錯碼字。我們簡單了解一下各部分的作用:

  • 空白區:留空,無需做任何處理
  • 位置探測圖形:輔助掃描軟件定位二維碼
  • 分隔符:區分功能模式和編碼區
  • 圖形定位:指示標記的密度并確定坐標系
  • 圖形矯正:校正圖形的數量和位置
  • 格式信息:存儲格式化數據信息
  • 版本信息:二維碼規格,40個規格的二維碼符號矩陣
  • 數據和糾錯碼字:實際保存的二維碼信息和糾錯碼字

本文用到的第三方庫:qrcode, myqr, pillow, zxing

首先在終端中安裝這些庫:

pip install qrcode myqr pillow zxing

python中的二維碼

import qrcode
data = 'https://www.baidu.com'
image = qrcode.make(data=data)
image.show()
image.save("baidu.png")

生成的二維碼如下圖:

進階

  • 大小和顏色
import qrcode


def plotQR(box_size, border, fill_color,back_color):
    qr = qrcode.QRCode(
        versinotallow=2,
        error_correctinotallow=qrcode.constants.ERROR_CORRECT_L,
        box_size=box_size,
        border=border,
    )
    data = 'https://www.baidu.com/'
    qr.add_data(data=data)
    qr.make(fit=True)
    image = qr.make_image(fill_color=fill_color , back_color=back_color)
    fn = f"baidu_{box_size}_{border_size}_{fill_color}_{back_color}.png"
    image.save(fn)
    return fn
exampleList = [
    (15,3,'blue','white'),
    (15,3,'red','green'),
    (10,2,'yellow','grey'),
    (5,1,'pink','black'),
]
[plotQR(*arg) for arg in exampleList]

結果如下:

baidu_15_3_blue_white.png:

baidu_15_3_red_green.png:

baidu_10_2_yellow_grey.png:

baidu_5_1_pink_black.png

  • 背景圖

myqr是另外一個二維碼相關的庫,它可以生成帶背景圖的二維碼。

from MyQR import myqr

myqr.run(
    words="https://baidu.com/",
    versinotallow=1,
    picture="bg.png",
    colorized=True,
    save_name="baidu_bg.png",
)

上圖生成的二維碼:

當然把背景圖換成動態圖(gif),也可以生成動態的二維碼。??????

識別二維碼圖片

上面是生成二維碼的示例,下面是識別二維碼的示例:我們來驗證下是否能成功!

# 方法一

import zxing
reader = zxing.BarCodeReader()
barcode = reader.decode("001.png")
print(barcode.parsed)

# 方法二
import cv2
import os
img = cv2.imread("001.png")
# cv2.imshow("imge", img)
det = cv2.QRCodeDetector()
val, pts, st_code = det.detectAndDecode(img)
print(val)

總結

二維碼無處不在,你的二維碼是否讓人眼前一亮?趕緊告訴你的小伙伴python可以創建讀取二維碼吧!

責任編輯:華軒 來源: 哈希編程
相關推薦

2022-03-24 09:43:29

二維碼二維碼修改器github

2024-06-26 08:46:45

2013-01-30 12:16:49

二維碼NFC近場通訊

2023-11-17 09:07:51

.NET生成二維碼識別二維碼

2011-12-06 16:40:45

二維碼快拍二維碼靈動快拍

2017-02-21 09:17:46

二維碼漏洞

2023-11-17 15:44:06

C++庫生成二維碼

2015-10-28 13:33:50

二維碼條形碼掃描源碼

2020-10-08 18:48:02

二維碼安全應用安全網絡攻擊

2012-04-01 09:53:13

二維碼

2015-09-24 09:56:19

.NET二維碼

2014-03-05 14:41:55

二維碼登錄

2011-11-24 16:00:23

信息圖QR碼二維碼

2023-08-08 14:16:07

二維碼開發鴻蒙

2025-03-04 09:15:00

惡意軟件網絡安全郵件釣魚

2024-06-03 10:33:08

2015-11-09 13:03:47

JavaServlet創建二維碼

2013-07-25 10:07:33

百度二維碼

2011-08-30 17:42:02

Kuapay二維碼移動支付

2020-12-24 18:48:36

二維碼二進制條形碼
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 在线国产一区二区 | 午夜精品久久久久久久久久久久久 | 亚洲精品一区二三区不卡 | 99久久久久久99国产精品免 | 一区二区三区视频在线观看 | 亚洲视频中文字幕 | 久久精品久久久久久 | 精品一区二区三区四区 | 成人不卡视频 | 免费精品 | 一区二区三区四区在线播放 | 蜜月va乱码一区二区三区 | 成人免费网站www网站高清 | 久草视频在| 黄色高清视频 | www.久久 | 亚洲激情综合网 | 成人影院在线观看 | 国产精品久久久久久亚洲调教 | 久久精品网 | 视频一区二区三区中文字幕 | 日韩高清国产一区在线 | 日韩二三区| 在线视频成人 | 国产一区不卡 | 欧日韩不卡在线视频 | 中文字幕一区二区三区不卡 | www在线视频 | 欧美视频在线一区 | 91成人精品 | 久久这里只有精品首页 | 黄色网址免费看 | 亚洲精品区 | 最近最新中文字幕 | 精品一区二区视频 | 久久国产三级 | 99re66在线观看精品热 | 亚洲视频欧美视频 | 久久av一区二区三区 | 午夜免费福利电影 | 成人毛片在线视频 |