Python实现动态二维码生成的示例代码

 更新时间:2022年05月07日 15:48:41   作者:李运辰  
这篇文章主要和大家分享两个制作二维码的Python库,可以生成普通的二维码、图片背景版二维码、动图GIF版二维。文中的示例代码讲解详细,感兴趣的可以学习一下

大家好,我是辰哥~

今天给大家分享两个制作二维码的Python库,可以生成普通的二维码、图片背景版二维码、动图GIF版二维。

1.MyQR

安装

pip install MyQR

普通的二维码制作

from MyQR import myqr
#运行
myqr.run('http://mtw.so/5w0Ubz')

二维码附上了链接,用手机扫的话,就可以直接打开所带的链接

生成的二维码如下:

微信扫码的结果如下:

带背景图片的二维码制作

from MyQR import myqr
text = "http://mtw.so/5w0Ubz"
#给二维码添加图片背景
myqr.run(
    text,
    picture='./pythonyjz.jpg',
    colorized=True,
    version=8
)

背景图片(pythonyjz.jpg)

参数说明

  • words:二维码内容
  • version:二维码大小,范围为 [1,40]
  • picture:二维码背景图 .jpg,.png,.bmp,.gif,默认为黑白色
  • colorized:二维码背景颜色,默认 False,即黑白色
  • save_name:二维码名称,默认为 qrcode.png
  • save_dir:二维码路径,默认为程序当前路径

生成的二维码如下:

带动图背景的二维码制作

from MyQR import myqr

text = "http://mtw.so/5w0Ubz"
#给二维码添加动图gif背景
myqr.run(
    text,
    #动图gif
    picture='./pythonyjz.gif',
    colorized=True,
    version=8
)

动图(pythonyjz.gif)如下:

生成的动图如下:

图片背景的二维码和动图GIF背景的二维码,除了传入的图片格式不一样外,其他的设置都可以通用。

2.qrcode

安装

pip install qrcode
pip install Image
pip install matplotlib

简单的二维码制作

默认参数版

# 导入模块
import qrcode
# 传入将要生成二维码的URL
img = qrcode.make('http://mtw.so/5w0Ubz')
# 保存
img.save('python研究者-1.png')

生成的二维码如下:

自定义参数版

import qrcode
qr = qrcode.QRCode(
    version=10,
    # 二维码的纠错功能
    error_correction=qrcode.constants.ERROR_CORRECT_L,
    # 二维码中每个小格子包含的像素
    box_size=10,
    # 边框包含的格子数,默认为4
    border=4,
)
# 添加数据
qr.add_data('http://mtw.so/5w0Ubz')
# 填充数据
qr.make(fit=True)
# 二维码的背景色和格子色
img=qr.make_image(fill_color='black', back_color='white');
img.save('python研究者-2.png')

生成的二维码如下:

带背景图片的二维码制作

from PIL import Image
import qrcode
import matplotlib.pyplot as plt
qr = qrcode.QRCode(
    version=1,
    error_correction=qrcode.constants.ERROR_CORRECT_H,
    box_size=5,
    border=4,
)

# 添加数据
qr.add_data("http://mtw.so/5w0Ubz")
# 填充数据
qr.make(fit=True)
# 生成图片
img = qr.make_image(fill_color="green", back_color="white")

# 添加logo,打开logo照片
icon = Image.open("pythonyjz.jpg")
# 获取图片的宽高
img_w, img_h = img.size
# 参数设置logo的大小
factor = 6
size_w = int(img_w / factor)
size_h = int(img_h / factor)
icon_w, icon_h = icon.size
if icon_w > size_w:
    icon_w = size_w
if icon_h > size_h:
    icon_h = size_h
# 重新设置logo的尺寸
icon = icon.resize((icon_w, icon_h), Image.ANTIALIAS)
# 得到画图的x,y坐标,居中显示
w = int((img_w - icon_w) / 2)
h = int((img_h - icon_h) / 2)
# 黏贴logo照
img.paste(icon, (w, h), mask=None)
# 保存img
img.save('python研究者-3.png')

生成的二维码如下:

总结

文章介绍了两种不同制作二维码的库,以及对应的使用,感兴趣的可以自己动手试试!!

以上就是Python实现动态二维码生成的示例代码的详细内容,更多关于Python动态二维码的资料请关注脚本之家其它相关文章!

相关文章

  • 详解Python中元组的三个不常用特性

    详解Python中元组的三个不常用特性

    元组是Python中一种重要的内置数据类型。与列表一样,我们经常使用元组将多个对象保存为相应的数据容器。本文为大家总结了元组的三个不常用特性,感兴趣的小伙伴可以了解一下
    2022-07-07
  • 详解python中读取和查看图片的6种方法

    详解python中读取和查看图片的6种方法

    本文主要介绍了详解python中读取和查看图片的6种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-04-04
  • python显示生日是星期几的方法

    python显示生日是星期几的方法

    这篇文章主要介绍了python显示生日是星期几的方法,涉及Python使用date模块操作日期的技巧,需要的朋友可以参考下
    2015-05-05
  • python单链路性能测试实践

    python单链路性能测试实践

    这篇文章主要为大家介绍了python单链路性能测试实践示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • Python批量改变图片名字的示例代码

    Python批量改变图片名字的示例代码

    本文主要介绍了Python批量改变图片名字的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • python3调用c语言代码的全过程记录

    python3调用c语言代码的全过程记录

    python调用c语言代码的方式十分简单,只需四步。下面这篇文章就来给大家详细介绍了关于python3如何调用c语言代码的相关资料,需要的朋友可以参考下
    2021-05-05
  • Win10系统下安装编辑器之神(The God of Editor)Vim并且构建Python生态开发环境过程(2020年最新攻略)

    Win10系统下安装编辑器之神(The God of Editor)Vim并且构建Python生态开发环境过程(2

    这篇文章主要介绍了Win10系统下安装编辑器之神(The God of Editor)Vim并且构建Python生态开发环境(2020年最新攻略),本次我们在Win10平台构建一套以Vim为核心的Python开发环境,需要的朋友可以参考下
    2023-01-01
  • Python3中lambda表达式与函数式编程讲解

    Python3中lambda表达式与函数式编程讲解

    今天小编就为大家分享一篇关于Python3中lambda表达式与函数式编程讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • python中.format()方法使用详解

    python中.format()方法使用详解

    这篇文章主要介绍了python中.format()方法使用详解,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的朋友可以参考一下
    2022-07-07
  • Python深度学习实战PyQt5窗口切换的堆叠布局示例详解

    Python深度学习实战PyQt5窗口切换的堆叠布局示例详解

    本文以堆叠窗口控件为例,详细介绍堆叠布局的界面设计和程序实现过程,通过案例带小白创建一个典型的堆叠布局多窗口切换程序
    2021-10-10

最新评论