python中有一个好玩的库,不仅可以生成各种花色的二维码,还可以生成动态二维码。

MyQR是一个能够生成自定义二维码的第三方库,可以根据需要生成普通二维码、带图片的艺术二维码,也可以生成动态二维码

效果图如下:

首先安装MyQR库,直接用pip install myqr(or MyQR)。需要注意的是MyQR依赖于python3,在python2的环境下可能无法正常运行

1.生成普通二维码

在程序中导入MyQR包下的模板myqr,其中word参数接收一个字符串作为二维码的内容。

1 from MyQR import myqr#注意大小写
2 myqr.run(words='')

运行后生成一个名为“qrcode.png”的二维码图片,用微信扫一扫生成的二维码,就会自动跳转到这个地址。

下面我们来详细的讲解一下 myqr.run() 函数里面的参数

参数

含义

详细

words

二维码指向链接

str,输入链接或者句子作为参数

version

边长

int,控制边长,范围是1到40,数字越大边长越大,默认边长是取决于你输入的信息的长度和使用的纠错等级

level

纠错等级

str,控制纠错水平,范围是L、M、Q、H,从左到右依次升高,默认纠错等级为'H'

picture

结合图片

str,将QR二维码图像与一张同目录下的图片相结合,产生一张黑白图片

colorized

颜色

bool,使产生的图片由黑白变为彩色的

contrast

对比度

float,调节图片的对比度,1.0 表示原始图片,更小的值表示更低对比度,更大反之。默认为1.0

brightness

亮度

float,调节图片的亮度,其余用法和取值与 contrast 相同

save_name

输出文件名

str,默认输出文件名是"qrcode.png"

save_dir

存储位置

str,默认存储位置是当前目录

2.生成带图片的二维码

1 myqr.run(words='',
2          picture='girl.jpg',colorized=True)
3 图片要和代码保持同一路径

 此为彩色图片代码,需要黑白图片就去掉参数colorized=True。另外注意把图片和代码放在同一路径中,否则会报错找不到图片

3.生成动态二维码

1 可以直接在命令中使用myqr指令生成需要的二维码
2 myqr '' -p QX.gif -c
3 
4 myqr.run(words='',
5     picture='QX.gif',colorized=True)