可生成普通二维码、带图片的艺术二维码(黑白与彩色)、动态二维码(黑白与彩色)。

GitHub:https://github.com/sylnsfar/qrcode

中文版:https://github.com/sylnsfar/qrcode/blob/master/README-cn.md

已封装成MyQR库,直接使用pip安装即可

# 安装模块后
from MyQR import myqr
version, level, qr_name = myqr.run(
words,
version=1,
level='H',
picture=None,
colorized=False,
contrast=1.0,
brightness=1.0,
save_name=None,
save_dir=os.getcwd()
)

参数介绍:

# help(myqr)
Positional parameter
words: str Optional parameters
version: int, from 1 to 40
level: str, just one of ('L','M','Q','H')
picutre: str, a filename of a image
colorized: bool
constrast: float
brightness: float
save_name: str, the output filename like 'example.png'
save_dir: str, the output directory

words:字符串类型,链接或者句子作为参数,然后在程序的当前目录中产生相应的二维码图片文件

version:整型,控制边长,范围是1至40,数字越大边长越大

level:字符串类型,控制纠错水平,范围是L、M、Q、H,从左到右依次升高

picture:字符串类型,图片链接,支持png、jpg、bmp、gif(用gif格式的话,生成的二维码就是动态的)

colorized:布尔类型,True是彩色,False是黑白

save_name:字符串类型,保存二维码图片的名字,需要写出图片类型。默认输出文件名是“ qrcode.png ",而默认存储位置是当前目录,重名会覆盖当前

save_dir:字符串类型,保存二维码图片的路径

constrast:浮点类型,调节生成图片的对比度,1.0表示与原图片一致,更小的值表示更低的对比度

brightness:浮点类型,调节生成图片的亮度,用法与constrast一致

源代码


from MyQR import myqr
import os #1、黑白、L,其他参数默认
version, level, qr_name = myqr.run(
words='https://github.com/sylnsfar/qrcode/blob/master/README-cn.md' ,
version=1,
level='L',
picture='panda.png',
colorized=False,
contrast=1.0,
brightness=1.0,
save_name='1panda_noncolorized.png',
save_dir=os.getcwd()
) #2、彩色、L,其他参数默认
version, level, qr_name = myqr.run(
words='https://github.com/sylnsfar/qrcode/blob/master/README-cn.md' ,
version=1,
level='L',
picture='panda.png',
colorized=True,
contrast=1.0,
brightness=1.0,
save_name='2panda_colorized.png',
save_dir=os.getcwd()
) #3、彩色、H,其他参数默认
version, level, qr_name = myqr.run(
words='https://github.com/sylnsfar/qrcode/blob/master/README-cn.md' ,
version=1,
level='H',
picture='panda.png',
colorized=True,
contrast=1.0,
brightness=1.0,
save_name='3panda_colorized_H.png',
save_dir=os.getcwd()
) #4、彩色、H、40,其他参数默认
version, level, qr_name = myqr.run(
words='https://github.com/sylnsfar/qrcode/blob/master/README-cn.md' ,
version=40,
level='H',
picture='panda.png',
colorized=True,
contrast=1.0,
brightness=1.0,
save_name='4panda_colorized_H_40.png',
save_dir=os.getcwd()
) #5、彩色、动态二维码,其他参数默认
version, level, qr_name = myqr.run(
words='https://github.com/sylnsfar/qrcode/blob/master/README-cn.md' ,
version=1,
level='L',
picture='qb.gif',
colorized=True,
contrast=1.0,
brightness=1.0,
save_name='5qb.gif',
save_dir=os.getcwd()
)

原始图片:panda.png,大小1213*1213

结果(按顺序显示,未改显示图片的大小)

有几个小问题:

1. 原图本身是jpg格式,但是运行报错;将后缀改为png之后运行ok,原因暂时未知

2.生成的二维码大小要适中,若version过大(例如本例中的第四张),手机需要距离一定的距离才能扫到,但是无法识别

3.原图最好使用正方形图片

												

使用python3调用MyQR库生成动态二维码(附源代码)的更多相关文章

  1. python小工具myqr生成动态二维码

    python小工具myqr生成动态二维码 (一)安装 (二)使用 (一)安装 命令: pip install myqr 安装完成后,就可以在命令行中输入 myqr 查看下使用帮助: myqr --he ...

  2. Python | 一行命令生成动态二维码

    当我看到别人的二维码都做的这么炫酷的时候,我心动了! 我也想要一个能够吸引眼球的二维码,今天就带大家一起用 Python 来做一个炫酷的二维码! 首先要安装工具 myqr: pip install m ...

  3. phpqrcode生成动态二维码简单实例

    这是一个利用phpqrcode生成动态二维码简单实例,比微信官方提供的接口还要好用.二维码是动态的,不用生成图片,可自定义二维码大小,间隙,跳转地址等. 参数设置: include_once 'php ...

  4. 你只要5行代码,拥有你的个性二维码,用Python生成动态二维码

    如果想了解更多关于python的应用,可以私信我,或者点击下方链接自行获取,里面到资料都是免费的(http://t.cn/A6Zvjdun) 二维码满天飞,但是有没有想过Python也能制作出专属于自 ...

  5. Python 生成个性二维码

    1.1 实验内容 本课程通过调用MyQR接口来实现生成个人所需二维码,并可以设置二维码的大小.是否在现有图片的基础上生成.是否生成动态二维码. 本课程主要面向Python3初学者. 1.2 知识点 P ...

  6. python3使用myqr生成链接二维码

    技术背景 二维码技术在各个领域中都已经有非常成熟的应用,比如随处可见的二维码支付,比如疫情期间的绿码,再比如工业领域中,可以使用二维码作为定位的标签,大大提升了室内定位技术的精确度.二维码的格式内容大 ...

  7. 微信小程序动态生成保存二维码

    起源:最近小程序需要涉及到一些推广方面的功能,所以要写一个动态生成二维码用户进行下载分享,写完之后受益良多,特此来分享一下: 一.微信小程序动态生成保存二维码 wxml: <view class ...

  8. demo:动态生成专属二维码

    在日常生活中,随处可见二维码,那么js如何生成动态的专属二维码?其实,通过"二维码插件"我们可以快速生成二维码.在这,记录一下的生成专属二维码demo,一起来看看jquery.qr ...

  9. 用Python制作动态二维码

    参考来源链接:https://mp.weixin.qq.com/s/p-ptQZD6_bjUhmU822OPww 今天在最大的同性交友社区GitHub上发现了一个比较有意思的项目,无论你是什么操作系统 ...

随机推荐

  1. Jenkins权威指南

    https://jenkins.io/doc/   ---官网 https://www.cnblogs.com/leefreeman/p/4226978.html

  2. net Core 入门实战

    Asp.net Core 入门实战   Asp.Net Core 是开源,跨平台,模块化,快速而简单的Web框架. Asp.net Core官网的一个源码合集,方便一次性Clone 目录 快速入门 安 ...

  3. C语言-字符操作函数

    1字符数组的初始化: 1.1 char string={'c','h','i','n','a'} 1.2char string={"china"}或者去掉{}即char strin ...

  4. Redis的数据类型(Strings、 hashes)

    字符串(Strings)类型及操作 字符串是Redis值的最基础的类型,一个key对应一个value,Redis字符串是二进制安全的,这意味着一个Redis字符串可以包含任何种类的数据,例如一个JPE ...

  5. MVC的viewPage 通用属性运用。

    试想下在MVC的前端页面JS或者html中需要使用多语言,而后端的多语言是维护在资源文件中的,前端如果使用的话需要使用AJAX频繁的获取,一个页面中可能会存在大量的需要语言转换的地方,频繁使用AJAX ...

  6. Java 面向对象,封装,继承

    1相关概念的理解 1.1面向过程.面向对象 面向过程与面向对象都是编程中,编写程序的一种思维方式. 面向过程的程序设计方式,是遇到一件事时,思考“我该怎么做”,然后一步步实现的过程.(职员思想) 面向 ...

  7. JS判断android ios系统 PC端和移动端

    最近公司上线移动端,需要根据不同的系统跳转到不同的产品页面,百度后发现这一段代码很好用,不但可以判断当前是什么系统,还能知道当前浏览器是什么内核,移动端PC端都已测试无问题! var browser ...

  8. ES6 Interator

    Interator "集合"数据的结构主要有 Array .Object. Set and Map ,任何数据结构只要部署 Iterator 接口,就可完成遍历操作 遍历过程: 创 ...

  9. 对Yii 2.0模型rules的理解(load()无法正确装载数据)

    在实际开发中,遇到数据表新增字段而忘记了在对应模型中rules规则中添加新增的字段,而导致load()方法装载不到新增字段,导致新增字段无法写入数据库中.   解决办法:在新增字段后及时在对应模型ru ...

  10. 快速搭建基于Azure Paas的高可用WordPress网站

    产品详情 产品介绍 WordPress是一种使用非常广泛的CMS系统.本应用是根据Azure Resource Manager模板创建的.通过该ARM模板可以快速建立web应用和MySQL数据库,部署 ...