Python 二维码解码

二维码解析

Python中关于二维码解析的现成模块有很多,比较著名的就是Zbar以及ZXing.然而很不幸的是,官方的版本都是支持到python2.x,下面是在python2.x的例子:

import zbar
def get_QR():
    scanner = zbar.ImageScanner()
    scanner.parse_config("enable")
    pil = Image.open("char.png").convert('L')
    width, height = pil.size
    raw = pil.tostring()
    image = zbar.Image(width, height, 'Y800', raw)
    scanner.scan(image)
    data = ''
    for symbol in image:
        data+=symbol.data
    del(image)
    return data

其中 data就是我们需要的已经解析得到的内容。

直接pip install zbar可能会出错,可以下载exe安装,下载的地址为:https://github.com/jacobvalenta/zbar-py27-msi/blob/master/zbar-0.10.win32-py2.7_2.msi

查阅了相关资料,关于Python3.x的zbar适配已经有人放出来了,叫做zbarlight,我尝试按照作者的的步骤执行,却发生了一些麻烦,最终没有完成。作者关于win平台上的支持还没有足够重视。

http://zbar.sourceforge.net/这是zbar的win软件版本,运行之后,我们可以直接使用命令行形式解析二维码图片。

zbarimg -d http://7xowaa.com1.z0.glb.clouddn.com/qrcode.jpg

zbar分为zbarimg和zbarcam分别对应图片格式、摄像头格式,摄像头形式在win平台不太管用,图片格式可以填写本地图片文件名,也可以使用URL. 
效果图 

posted on 2016-10-31 15:08  帅胡  阅读(3582)  评论(0编辑  收藏  举报

导航