python二维码操作:QRCode和MyQR入门
1、QRCode
- QRCode最简单的使用
import qrcode
qrcode.make("第一个二维码").get_image().show()
根据文本生成二维码并且直接显示。
- 根据文本或URL生成二维码,保存到指定目录并显示二维码
import qrcode
import os
text = input("请输入文本或者URL:")
imgname = input("请输入生成二维码的名称:")
img = qrcode.make(text)
img.save(os.getcwd() + "/images/" + imgname + ".png")
img.show()
- 生成带logo的二维码
from PIL import Image
import qrcode, os
def create_qrcode(url, qrcodename):
qr = qrcode.QRCode(
version=1, # 设置容错率为最高
error_correction=qrcode.ERROR_CORRECT_H, # 用于控制二维码的错误纠正程度
box_size=8, # 控制二维码中每个格子的像素数,默认为10
border=1, # 二维码四周留白,包含的格子数,默认为4
)
qr.add_data(url) # QRCode.add_data(data)函数添加数据
qr.make(fit=True) # QRCode.make(fit=True)函数生成图片
img = qr.make_image()
img = img.convert("RGBA") # 二维码设为彩色
logo = Image.open("images/logo.jpg") # 传gif生成的二维码也是没有动态效果的
w,h = img.size
logo_w,logo_h = logo.size
l_w = int((w - logo_w) / 2)
l_h = int((h - logo_h) / 2)
logo = logo.convert("RGBA")
img.paste(logo, (l_w, l_h), logo)
img.show()
img.save(os.getcwd() + "/images/" + qrcodename + ".png", quality=100)
def main():
url = input("请输入文本或URL:")
qrcodename = input("请输入生成二维码的名称:")
create_qrcode(url,qrcodename)
if __name__ == '__main__':
main()
注意:logo图不要太大,不然生成之后logo可能会挡住二维码的内容,导致扫不出来。
2、MyQR
- 通过myqr生成动态二维码
from MyQR import myqr
import os
text = input("请输入文本或url:")
save_name = input("请输入生成二维码的名称:")+".png"
myqr.run(
words=text, #在命令后输入链接或者句子作为参数,然后在程序的当前目录中产生相应的二维码图片文件,默认命名为” qrcode.png“
version=1, #设置容错率为最高默认边长是取决于你输入的信息的长度和使用的纠错等级;而默认纠错等级是最高级的H
level='H', #控制纠错水平,范围是L、M、Q、H,从左到右依次升高
picture="images/logo.jpg", #用来将QR二维码图像与一张同目录下的图片相结合,产生一张黑白图片
colorized=True, #可以使产生的图片由黑白(False)变为彩色(True)的
contrast=1.0, #用以调节图片的对比度,1.0 表示原始图片,更小的值表示更低对比度,更大反之。默认为1.0。
brightness=1.0, #用来调节图片的亮度,其余用法和取值与 -con 相同
save_name=save_name, #控制文件名,格式可以是 .jpg, .png ,.bmp ,.gif ;
save_dir=os.getcwd() + "/images/"
)
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
默认输出文件名是“ qrcode.png ",而默认存储位置是当前目录
save_name: str, the output filename like 'example.png'
save_dir: str, the output directory
python二维码操作:QRCode和MyQR入门的更多相关文章
- python二维码模块(qrcode)
qrcode模块安装 运行命令行工具(cmd),使用pip安装工具分别安装qrcode. pip install qrcode 先来个简单的例子 import qrcode # 二维码内容 data ...
- 免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)
在生活中有一种东西几乎已经快要成为我们的另一个电子”身份证“,那就是二维码.无论是在软件开发的过程中,还是在普通用户的日常中,几乎都离不开二维码.二维码 (dimensional barcode) , ...
- DotNet二维码操作组件ThoughtWorks.QRCode
DotNet二维码操作组件ThoughtWorks.QRCode 在生活中有一种东西几乎已经快要成为我们的另一个电子"身份证",那就是二维码.无论是在软件开发的过程中,还是在普通用 ...
- Python 二维码制作
Python 二维码制作 先介绍python 二维码制作的第三方库 QRCode .MyQR QRCode 生成这个二维码只用三行 import qrcode img = qrcode.make ...
- jQuery生成二维码 jquery.qrcode.js
https://github.com/jeromeetienne/jquery-qrcode 1.将jquery.qrcode.min.js和jquery添加到您的网页中 <script src ...
- vue2.0 自定义 生成二维码(QRCode)组件
1.自定义 生成二维码组件 QRCode.vue <!-- 生成二维码 组件 --> <template> <canvas class="qrcode-canv ...
- QRCode生成二维码,jq QRCode生成二维码,QRCode生成电子名片
[QRCode官网]http://phpqrcode.sourceforge.net/ PHP QRCode生成二维码 官网下载QRCode源码包,引入源码包中的 qrlib.php . <?p ...
- Python 二维码解码
二维码解析 Python中关于二维码解析的现成模块有很多,比较著名的就是Zbar以及ZXing.然而很不幸的是,官方的版本都是支持到python2.x,下面是在python2.x的例子: import ...
- python 二维码
pip3 install Pillow pip3 install qrcode import qrcode text ="gisoracle我爱你呀" #input("输 ...
随机推荐
- svn关键词BASE, HEAD, COMMITTED, PREV的深入理解
svn关键词BASE, HEAD, COMMITTED, PREV可以很方便用于日常操作中,但是很多人对他们的工作原理和方式不是太了解. 在这里我将使用用例,诠释他们的作用和意图. 先给出svn手册中 ...
- from 组件
知识补充 : location.href="/index/" 加路径或者网址都可以 location.h ...
- Halcon算子之shape_trans,用于变换区域的形状
函数原型:shape_trans(Region : RegionTrans : Type : ) *shape_trans*仍然是区域,smallest_rectangle1可以获得四个角的坐标 函数 ...
- leetcode704
public class Solution { public int Search(int[] nums, int target) { var len = nums.Length; ; ; if (t ...
- eureka快速剔除失效服务
eureka服务端配置 #eureka server刷新readCacheMap的时间,注意,client读取的是readCacheMap,这个时间决定了多久会把readWriteCacheMap的缓 ...
- MySQL Innodb 神秘消失
问题描述: 早晨接到 Zabbix 报警,提示 Host: 10.10.1.2, MySQL 主从同步失败. 登录服务器查看具体情况. shell > mysql mysql> show ...
- 【原】Coursera—Andrew Ng机器学习—Week 10 习题—大规模机器学习
[1]大规模数据 [2]随机梯度下降 [3]小批量梯度下降 [4]随机梯度下降的收敛 Answer:BD A 错误.学习率太小,算法容易很慢 B 正确.学习率小,效果更好 C 错误.应该是确定阈值吧 ...
- 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 11—Machine Learning System Design 机器学习系统设计
Lecture 11—Machine Learning System Design 11.1 垃圾邮件分类 本章中用一个实际例子: 垃圾邮件Spam的分类 来描述机器学习系统设计方法.首先来看两封邮件 ...
- centos7 安装wxPython
*** exact error that occured. This usually means GTK+ is incorrectly installed. configure: error: ...
- C# Equals
[C# Equals] 1.Object.Equals() The type of comparison between the current instance and the obj parame ...