当前位置:首页 > 科技  > 软件

Python玩转二维码,炫酷!

来源: 责编: 时间:2023-12-25 17:28:42 340观看
导读二维码(Quick Response Code)几乎已经渗透到我们日常生活的每一个角落。本文分享如何使用Python生成各种炫酷二维码。二维码(Quick Response Code)几乎已经渗透到我们日常生活的每一个角落。二维码是 1994 年发明的一种矩

二维码(Quick Response Code)几乎已经渗透到我们日常生活的每一个角落。本文分享如何使用Python生成各种炫酷二维码。iuz28资讯网——每日最新资讯28at.com

iuz28资讯网——每日最新资讯28at.com

二维码(Quick Response Code)几乎已经渗透到我们日常生活的每一个角落。iuz28资讯网——每日最新资讯28at.com

二维码是 1994 年发明的一种矩阵条形码。iuz28资讯网——每日最新资讯28at.com

实际上,二维码通常包含指向网站或应用程序的定位器、标识符或跟踪器的数据。iuz28资讯网——每日最新资讯28at.com

二维码使用四种标准化编码模式(数字、字母数字、字节/二进制、汉字)来高效存储数据。iuz28资讯网——每日最新资讯28at.com

二维码的结构

iuz28资讯网——每日最新资讯28at.com

从上图可以看出,二维码结构整体分为功能模式和编码区。功能模式细分为:空白区、位置探测图形、分隔符、图形定位、图形矫正;而编码区又细分为:格式信息、版本信息、数据、纠错码字。我们简单了解一下各部分的作用:iuz28资讯网——每日最新资讯28at.com

  • 空白区:留空,无需做任何处理
  • 位置探测图形:辅助扫描软件定位二维码
  • 分隔符:区分功能模式和编码区
  • 图形定位:指示标记的密度并确定坐标系
  • 图形矫正:校正图形的数量和位置
  • 格式信息:存储格式化数据信息
  • 版本信息:二维码规格,40个规格的二维码符号矩阵
  • 数据和纠错码字:实际保存的二维码信息和纠错码字

本文用到的第三方库:qrcode, myqr, pillow, zxingiuz28资讯网——每日最新资讯28at.com

首先在终端中安装这些库:iuz28资讯网——每日最新资讯28at.com

pip install qrcode myqr pillow zxing

python中的二维码

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

生成的二维码如下图:iuz28资讯网——每日最新资讯28at.com

iuz28资讯网——每日最新资讯28at.com

进阶

  • 大小和颜色
import qrcodedef 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 fnexampleList = [    (15,3,'blue','white'),    (15,3,'red','green'),    (10,2,'yellow','grey'),    (5,1,'pink','black'),][plotQR(*arg) for arg in exampleList]

结果如下:iuz28资讯网——每日最新资讯28at.com

baidu_15_3_blue_white.png:iuz28资讯网——每日最新资讯28at.com

iuz28资讯网——每日最新资讯28at.com

baidu_15_3_red_green.png:iuz28资讯网——每日最新资讯28at.com

iuz28资讯网——每日最新资讯28at.com

baidu_10_2_yellow_grey.png:iuz28资讯网——每日最新资讯28at.com

iuz28资讯网——每日最新资讯28at.com

baidu_5_1_pink_black.pngiuz28资讯网——每日最新资讯28at.com

iuz28资讯网——每日最新资讯28at.com

  • 背景图

myqr是另外一个二维码相关的库,它可以生成带背景图的二维码。iuz28资讯网——每日最新资讯28at.com

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

上图生成的二维码:iuz28资讯网——每日最新资讯28at.com

iuz28资讯网——每日最新资讯28at.com

当然把背景图换成动态图(gif),也可以生成动态的二维码。

本文链接:http://www.28at.com/showinfo-26-54005-0.htmlPython玩转二维码,炫酷!

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: Python 30行代码内制作一个计算器

下一篇: 10分钟了解Python黑魔法 Yield、Iterator、Generator

标签:
  • 热门焦点
  • K60 Pro官方停产 第三方瞬间涨价

    虽然没有官方宣布,但Redmi的一些高管也已经透露了,Redmi K60 Pro已经停产且不会补货,这一切都是为了即将到来的K60 Ultra铺路,属于厂家的正常操作。但有意思的是该机在停产之后
  • 卢伟冰长文解析K60至尊版 对Redmi有着里程碑式的意义

    在今天的Redmi后性能时代战略发布会结束之后,Redmi总经理卢伟冰又带来了一篇长文,详解了为什么 Redmi 要开启后性能时代?为什么选择和 MediaTek、Pixelworks 深度合作?以及后性
  • 红魔电竞平板评测:大屏幕硬实力

    前言:三年的疫情因为要上网课的原因激活了平板市场,如今网课的时代已经过去,大家的生活都恢复到了正轨,这也就意味着,真正考验平板电脑生存的环境来了。也就是面对着这种残酷的
  • 5月iOS设备好评榜:iPhone 14仅排第43?

    来到新的一月,安兔兔的各个榜单又重新汇总了数据,像安卓阵营的榜单都有着比较大的变动,不过iOS由于设备的更新换代并没有那么快,所以相对来说变化并不大,特别是iOS好评榜,老款设
  • Golang 中的 io 包详解:组合接口

    io.ReadWriter// ReadWriter is the interface that groups the basic Read and Write methods.type ReadWriter interface { Reader Writer}是对Reader和Writer接口的组合,
  • 一年经验在二线城市面试后端的经验分享

    忠告这篇文章只适合2年内工作经验、甚至没有工作经验的朋友阅读。如果你是2年以上工作经验,请果断划走,对你没啥帮助~主人公这篇文章内容来自 「升职加薪」星球星友 的投稿,坐
  • 雅柏威士忌多款单品价格大跌,泥煤顶流也不香了?

    来源 | 烈酒商业观察编 | 肖海林今年以来,威士忌市场开始出现了降温迹象,越来越多不断暴涨的网红威士忌也开始悄然回归市场理性。近日,LVMH集团旗下苏格兰威士忌品牌雅柏(Ardbeg
  • 本地生活这块肥肉,拼多多也想吃一口

    出品/壹览商业 作者/李彦编辑/木鱼拼多多也看上本地生活这块蛋糕了。近期,拼多多在App首页“充值中心”入口上线了本机生活界面。壹览商业发现,该界面目前主要
  • 苹果公司要求三星和LG Display生产「无边框」OLED iPhone显示屏

    据 The Elec 报道,苹果已要求其供应商为未来的 iPhone 型号开发「无边框」OLED 显示面板。苹果显然已要求三星和 LG Display 开发新的 OLED 显示面
Top