二维码(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 qrcodedef plotQR(box_size, border, fill_color,back_color):qr = qrcode.QRCode(version=2,error_correction=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 myqrmyqr.run(words="https://baidu.com/",version=1,picture="bg.png",colorized=True,save_name="baidu_bg.png",
)

上图生成的二维码:

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

用Python玩转二维码相关推荐

  1. 使用python玩转二维码!速学速用!⛵

  2. 【Python】玩转二维码:生成、伪造和识别

    玩转二维码 前言及视频 一.二维码的生成 1.1 导包和相关说明 1.2 设置当前目录 1.3 设置保存目录 1.4 设置图标文件 1.5 清空输入项 1.6 初始化二维码 1.7 生成二维码图片主程 ...

  3. 如何用python制作动态二维码,提升表白成功率?

    来源:凹凸数据 本文约1000字,建议阅读5分钟. 本文教你用python制作动态二维码,助你表白成功! 关注数据派THU(DatapiTHU)后台回复"20200520"获取完整 ...

  4. python myqr制作二维码生成器_用Python生成动态二维码,只要5行代码,拥有你的个性二维码!...

    原标题:用Python生成动态二维码,只要5行代码,拥有你的个性二维码! 前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. P ...

  5. Python qrcode制作二维码

    Python制作二维码 Python传言是万能语言,那么,今天就用Python做个二维码 准备 先下载qrcode pip install qrcode 下不了的可以参照我写的pip错误解决方法 里面 ...

  6. Python生成个性二维码详解!

    一.实验介绍: Python生成个性二维码:通过调用MyQR接口来实现生成个人所需二维码,并可设置二维码的大小/是否在现有图片的基础上生成/是否生成动态二维码在线实验:https://www.shiy ...

  7. 用 Python 做动态二维码哄女友开心

    如何用python制作动态二维码,来哄女朋友开心? 这句话前半部分相信大家已经很熟悉了,很多同学也给自己的网站地址做过图片为底的二维码. 后半部分呢?那肯定要增加一些趣味啊,不然岂不是对不起凹凸数据的 ...

  8. Python实现支付宝二维码支付(沙箱环境)

    Python实现支付宝二维码支付 一.沙箱环境配置 1.登陆蚂蚁金融开放平台:https://openhome.alipay.com 2.选择进入我的开放平台.寻找开发中心的研发服务. 3.点击沙箱环 ...

  9. 数字图像处理二维码识别 python+opencv实现二维码实时识别

    数字图像处理二维码识别 python+opencv实现二维码实时识别 特点: (1)可以实现普通二维码,条形码: (2)解决了opencv输出中文乱码的问题 (3)增加网页自动跳转功能 (4)实现二维 ...

最新文章

  1. PXE网络无人职守安装
  2. 数据结构 图的深度优先遍历 C
  3. webpack4.x Loaders
  4. 查看mysql本地路径
  5. SecureCRTSecureFX_HH_x64_7.0.0.326 crt部署项目到服务器
  6. s5pv210——串口通信的基础概念
  7. html里面怎么ul加高度,div里面嵌套了ul,为什么div的高度小于ul高度
  8. MySQLzip压缩文件格式安装教程
  9. 智能手机市场输家和赢家:Android手机厥后居上
  10. DevOps on DevCloud|代码检查服务如何降低“Billion Dollar Mistake” NPE风险
  11. ubuntu 常用指令
  12. TensorFlow 学习(十一)—— 正则(regularizer)
  13. aspmysql发布_ASP如何使用MYSQL数据库
  14. 用MapX与C#开发地理信息系统
  15. matlab实对称矩阵对角化,第四节 实对称矩阵的对角化
  16. python打开浏览器并截图_使用python实现网页截图的两种方式
  17. 吴伯凡-认知方法论-T字形认知
  18. CMDB建设补充:教你用django+drf 怎么去生成漂亮的API文档
  19. 【复变函数与积分变换】05. 留数
  20. Unity在XR设备中获取手柄的按键信息

热门文章

  1. 【youcans 的 OpenCV 例程200篇】176.图像分割之均值漂移算法 Mean Shift
  2. 人机协作机器人发展趋势_人机协作引领机器人产业新趋势
  3. 工程材料学习3——第二章 金属材料组织和性能的控制(2.1 纯金属的结晶 2.2 合金的结晶)
  4. 【产业互联网周报】微盟称数据已全面找回,公布商家赔付计划;疫情影响全球展会:Facebook取消年度F8开发者大会...
  5. 从零开始操作系统------探析保护模式
  6. (四)JMockit 的API:@Injectable 与 @Mocked的不同--基础篇
  7. list中抽出某一个字段的值_java8从list集合中取出某一属性的值的集合案例
  8. js高效生成一组随机数(不重复)
  9. VS2017编译SQLite3生成.lib
  10. (18)语义分割--paddle--EISeg自动标注软件的使用和自己数据集的测试