Python实现动态二维码生成的示例代码
作者:李运辰 发布时间:2022-08-03 15:45:39
标签:Python,动态,二维码
大家好,我是辰哥~
今天给大家分享两个制作二维码的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')
生成的二维码如下:
总结
文章介绍了两种不同制作二维码的库,以及对应的使用,感兴趣的可以自己动手试试!!
来源:https://mp.weixin.qq.com/s/gQzUowOZ87vuwMl08HTyYw
0
投稿
猜你喜欢
- 前段时间做视频时需要演示电脑端的操作,因此要用到屏幕录制,下载了个迅捷屏幕录制,但是没有vip录制的视频有水印且只能录制二分钟,于是鄙人想了
- 首先建一个access 数据库,库中有一个URLINDEX表,其中URL和Keywords字段分别添加了索引,如下:URL &nb
- SQL Server 2008的独到之处:安装SQL Server 2008的设置和安装也有所改进。配置数据和引擎位已经分开了,所以它使创建
- 本程序有两文件test.asp 和tree.asp 还有一些图标文件 1。test.asp 调用类生成树 代码如下<%@
- 由传智播客教程整理,我们这里使用的是python2.7.x版本,就是2.7之后的版本,因为python3的改动略大,我们这里不用它。现在我们
- 开始刷leetcode算法题 今天做的是“买卖股票的最佳时机”题目要求 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。设计
- 我想大多数的人在编写ASP程序的时候,都碰到过类似的错误信息: Error Number -> 
- 题目:用 JavaScript 代码实现空位补零,比如 pad(12, 3) => 012实现一:/* 平淡无奇法 */functio
- 1.双击setup.exe.(出现安装向导界面) 2.在安装向导界面:选"基本安装",并选好主目录位置;创建启动数据库(
- 前言随着人工智能的日益火热,计算机视觉领域发展迅速,尤其在人脸识别或物体检测方向更为广泛,今天就为大家带来最基础的人脸识别基础,从一个个函数
- 其实网上已经有许多python语言书写的串口,但大部分都是python2写的,没有找到一个合适的python编写的串口助手,只能自己来写一个
- 导语还记得那些年,我们玩过的Windows小游戏吗?说起Windows自带的游戏,相信许多80、90后的朋友都不陌生。在很早的那个游戏贫瘠的
- 很多设计师都会遇到这样的问题。一个产品会有很多种方式去包装,其中包括很多功能和很多体验。功能越多会被认为越实用,体验越好会被认为越方便。方便
- Python面向对象编程(一)Python面向对象编程(二)Python面向对象编程(三)和其它编程语言相比,Python 在尽可能不增加新
- 武器档案名称:firebug最新版本:1.7用途:前端调试器必备指数:使用难度:firebug是前端最具盛名的调试器,功能非常强悍。fire
- <% &nbs
- php从5.2.x升级到5.3.2.出来问题了。有些原来能用的程序报错了。报错内容是Deprecated: Function session
- 这次哀悼,网页设计方面除了应用CSS灰度配色和滤镜,还用到正计时代码,就象汶川大地震已过去了多少天。下面这段代码,是从网易页面提取出来的,具
- 导言:到目前为止,我们的教程围绕的是text数据。然而,很多应用程序既需要处理text数据,也需要处理二进制数据。比如招聘网站可能需要用户上
- asp代理采集代码如下:<%Function ProxyPage(url) Set Retrieval&