小朋友们好,大朋友们好!
我是猫妹,一名爱上Python编程的小学生。
今日主题
如何用Python生成二维码。
如何用Python读取二维码。
二维码又称二维条码,常见的二维码为QR Code,QR全称Quick Response,是一种编码方式。
它比传统的Bar Code条形码能存更多的信息,也能表示更多的数据类型。
很多场合我们借助于二维码和相机的扫一扫功能,很大地提高了生产和学习效率。
懒人改变世界啊!
二维码是原昌宏在日本为DENSOWAVE公司发明的。
原昌宏,1957年出生于日本东京,1980年毕业于法政大学,并获得法政大学电气工程学士学位,同年加入了日本电装株式会社,1994年开发QR码。
生成二维码
Python中的库很多,有二维码相关的库Qrcode。
Qrcode官网:
https://github.com/lincolnloop/python-qrcode
https://gitcode.net/mirrors/lincolnloop/python-qrcode?utm_source=csdn_github_accelerator
我们用pip安装下,就可以使用了哦!
import qrcode
img = qrcode.make('和猫妹学Python')
img.save('./pic.jpg')
运行下,一张包含了上述信息的图片就生成了。
也可以这样写:
我们还可以通过在之前使用该Qrcode函数创建的qr对象中添加一些属性来自定义QR 码的设计和结构。
基本参数如下:
version:一个1 到40之间的整数,用于控制 QR 码的大小(最小的版本1是一个21x21矩阵)。默认为None,表示代码自动确认该参数。
error_correction:用于二维码的纠错。qrcode 包中提供了以下四个常量:
ERROR_CORRECT_L 大约可以纠正 7% 或更少的错误。
ERROR_CORRECT_M (默认)大约 15% 或更少的错误可以被纠正。
ERROR_CORRECT_Q 大约 25% 或更少的错误可以被纠正。
ERROR_CORRECT_H 大约可以纠正 30% 或更少的错误。
box_size:控制二维码的每个“盒子”有多少像素,默认为10。
border:控制边框应该有多少个框厚(默认为 4,这是根据规范的最小值)。
比如:
还可以修改二维码的形状,在其中嵌入图片等。
要将样式应用于QRCode,需要使用StyledPilImage。
这需要一个可选的module_drawers参数来控制二维码的形状,一个可选的color_mask参数来改变二维码的颜色,还有一个可选的embeded_image_path参数来嵌入图像。
这些二维码并不能保证对所有的二维码识别器都有效,需要做一些实验并将纠错error_correction设置为高(尤其是嵌入图像时)。
比如:
扩展:
还有个Python库myqr,可以生成各种酷炫的二维码。
比如背景是一张图片,背景是gif动图等。
如果没有安装,可以用pip安装下。
the secret is: 和猫妹学Python
我们把生成的几张二维码图片都测试下,都可以识别到:和猫妹学Python
好了,我们今天就学到这里吧!
我是猫妹,咱们下次见!
领取专属 10元无门槛券
私享最新 技术干货