Python生成二维码脚本
简单的记录下二维码生成和解析的Python代码
依赖下面三个包:
- PIL(图像处理包,安装:
pip install PIL
) - qrcode(二维码生成包,安装:
pip install qrcode
) - zbarlight(二维码解析包,安装:
pip install zbarlight
)
具体脚本:
# coding: utf-8
"""
filename: qrcode.py
Created by Tacey Wong at 16-9-22 下午10:34
"""import zbar
import qrcode
from PIL import Image
import os, sysdef gen_qrcode(string, path, logo=""):"""生成中间带logo的二维码需要安装qrcode, PIL库@参数 string: 二维码字符串@参数 path: 生成的二维码保存路径@参数 logo: logo文件路径@return: None"""qr = qrcode.QRCode(version=2,error_correction=qrcode.constants.ERROR_CORRECT_H,box_size=8,border=1)qr.add_data(string)qr.make(fit=True)img = qr.make_image()img = img.convert("RGBA")if logo and os.path.exists(logo):try:icon = Image.open(logo)img_w, img_h = img.sizeexcept Exception, e:print esys.exit(1)factor = 4size_w = int(img_w / factor)size_h = int(img_h / factor)icon_w, icon_h = icon.sizeif icon_w > size_w:icon_w = size_wif icon_h > size_h:icon_h = size_hicon = icon.resize((icon_w, icon_h), Image.ANTIALIAS)w = int((img_w - icon_w) / 2)h = int((img_h - icon_h) / 2)icon = icon.convert("RGBA")img.paste(icon, (w, h), icon)img.save(path)# 调用系统命令打开图片# xdg - open(opens a file or URL in the user's preferred application)os.system('xdg-open %s' % path)def decode_qrcode(path):"""解析二维码信息@参数 path: 二维码图片路径@return: 二维码信息"""# 创建图片扫描对象scanner = zbar.ImageScanner()# 设置对象属性scanner.parse_config('enable')# 打开含有二维码的图片img = Image.open(path).convert('L')# 获取图片的尺寸width, height = img.size# 建立zbar图片对象并扫描转换为字节信息qrCode = zbar.Image(width, height, 'Y800', img.tobytes())scanner.scan(qrCode)# 组装解码信息data = ''for s in qrCode:data += s.data# 删除图片对象del img# 输出解码结果return dataif __name__ == "__main__":info = "中华人民共和国合法公民——Tacey Wong\nhttp://www.cnblogs.com/taceywong"pic_path = "qr.png"icon_path = "logo.png"gen_qrcode(info, pic_path,logo_path )print decode_qrcode(pic_path)
生成的二维码图片如下:
扫描结果如下:
参考资料:https://pypi.python.org/pypi/qrcode
Python生成二维码脚本相关推荐
- python生成二维码_python生成二维码的实例详解
python生成二维码的实例详解 版本相关 操作系统:Mac OS X EI Caption Python版本:2.7 IDE:Sublime Text 3 依赖库 Python生成二维码需要的依赖库 ...
- python生成二维码、动态二维码 和 而二维码解析
python生成二维码.动态二维码 和 而二维码解析(8-20190129) 文章目录: 一.二维码介绍 二. 就是为了好玩所以想搞一下二维码,"好玩",少年醒醒,不要骗自己啦,起 ...
- 互联网 4 大发明之二维码,你如何使用 Python 生成二维码?
阅读文本大概需要 8 分钟. 新时代,人们有人信新的追求,自然而然会有新发明的诞生.去年,在"一带一路"国际合作高峰论坛举行期间, 20 国青年投票选出中国的"新四大发明 ...
- Python生成二维码的操作方法
使用的是qrcode库,在使用之前需要安装此库 pip install qrcode 网址 #python生成二维码 import qrcode img=qrcode.make("http: ...
- 使用 Python 生成二维码
本文原创发布于微信公众号「极客猴」,欢迎关注第一时间获取更多原创分享 新时代,人们有人信新的追求,自然而然会有新发明的诞生.去年,在"一带一路"国际合作高峰论坛举行期间, 20 国 ...
- 标题 Python生成二维码和解码
标题 Python生成二维码和解码 一.首先下载第三方库 方法一:打开cmd命令窗口,通过命令pip install 包名 进行第三方库安装 1.找到自己的Python环境位置目录,输入cmd回车进入 ...
- 利用python生成二维码 以及批量生成二维码
常见的两种简单生成二维码方法,目测均是很好用的 1.MyQR 要求是python3 ,并且二维码上的内容不支持中文 #1.生成普通二维码#在程序中导入MyQR包下的模板myqr,其中word参数接收 ...
- python生成二维码_使用python生成二维码
1.python-qrcode是个用来生成二维码图片的第三方模块,依赖于 PIL 模块和 qrcode 库. 首先,我们要安装三个模块,qrcode,image,PIL. pip install qr ...
- 如何用Python生成二维码
使用Python做二维码需要一个非常简单的模块--MyQR,这个模块相比于QRcode更加简单,功能也是特别强大,下面介绍一种生成简单二维码的方式. 安装方式 利用pip安装. 使用方式 首先导入. ...
最新文章
- Anaconda | CentOS7 -解决 Python2和Python3共存
- C语言-typedef与#define的区别
- 芯片数据手册datasheet哪里找?
- pycharm shadows name 'xxxx' from outer scope 警告
- 唐骏:幸福与财富无关
- linux mint 18 mysql_linux mint下mysql中文支持问题
- MVC架构 -- 初学试水选课管理系统
- GO语言学习之路18
- 深入学习java虚拟机第二版学习笔记
- linux pipe 缓冲大小,linux下,pipe的容量的讨论与查看
- 愿你一直能够撑下去!
- flowchart流程图
- 计算机显示器是指什么,电脑的显示器是什么 选购显示器的小技巧
- matlab 实现常用的混沌映射(Tent, Sine, Sinusoidal, Piecewise, Logistic, Cubic, Chebyshev)
- CSS 滚动条样式修改(详细)
- python编程代码-python编程代码
- [IDA Plugin] IDA插件收集
- [pytorch学习笔记] 3.Datasets Dataloaders
- 我的一点自学心得[摘]
- C语言:指针与指针变量