Python使用MyQR制作专属动态彩色二维码功能

yipeiwu_com6年前Python基础

Python中有一个非常有趣好玩的库MyQR,不仅可以制作各种漂亮的二维码,还可以生成动态彩色二维码。

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

生成动态二维码

效果图如下:

二维码扫描上图看看

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

这个库提供了两种使用方法,一种是直接使用命令行的方式,另外一种使用import引入,可以设置更多个性化设置。

下面新建一个py文件之后直接复制代码:

from MyQR import myqr
import os

version, level, qr_name = myqr.run(
  words="https://www.linuxidc.com",     # 可以是字符串,也可以是网址(前面要加http(s)://)
  version=1,               # 设置容错率为最高
  level='H',               # 控制纠错水平,范围是L、M、Q、H,从左到右依次升高
  picture="linuxidc.com.gif",              # 将二维码和图片合成
  colorized=True,             # 彩色二维码
  contrast=1.0,              #用以调节图片的对比度,1.0 表示原始图片,更小的值表示更低对比度,更大反之。默认为1.0
  brightness=1.0,             #用来调节图片的亮度,其余用法和取值同上
  save_name="www.linuxidc.com.gif",           # 保存文件的名字,格式可以是jpg,png,bmp,gif
  save_dir=os.getcwd()          #控制位置
)

接下来就可以修改参数了,colorized改为True就会生成彩图(你也colorized改为True),words替换为链接或者文本。

放上几个动态的二维码欣赏下:

扫描我

生成普通二维码

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

from MyQR import myqr#注意大小写
myqr.run(words='https://www.linuxidc.com/')

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

MyQR参数说明

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  调节图片的亮度 其余同上

save_name  输出文件名  str  默认输出文件名是 “qrcode.png”

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

总结

以上所述是小编给大家介绍的Python使用MyQR制作专属动态彩色二维码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

利用Python破解验证码实例详解

利用Python破解验证码实例详解

一、前言 本实验将通过一个简单的例子来讲解破解验证码的原理,将学习和实践以下知识点:       Python基本知识  &...

Python FTP两个文件夹间的同步实例代码

具体代码如下所示: # -*- coding: utf-8 -*- ''''''' ftp自动检测源文件夹的更新,将源文件夹更新的内容拷贝到目标文件夹中 使用树的层序遍...

Python多线程编程(一):threading模块综述

Python这门解释性语言也有专门的线程模型,Python虚拟机使用GIL(Global Interpreter Lock,全局解释器锁)来互斥线程对共享资源的访问,但暂时无法利用多处理...

python的slice notation的特殊用法详解

python的slice notation的特殊用法详解

如下所示: python的slice notation的特殊用法。 a = [0,1,2,3,4,5,6,7,8,9] b = a[i:j] 表示复制a[i]到a[j-1],以生成新的...

python的schedule定时任务模块二次封装方法

通过定时来执行任务,我们日常工作生活中会经常用到。python有schedule这个库,简单好用,比如,可以每秒,每分,每小时,每天,每天的某个时间点,间隔天数的某个时间点定时执行,另外...