您的位置:首页 > 编程语言 > Python开发

python生成和解析二维码

2013-07-15 13:11 309 查看
python生成二维码,常用的模块有pyqrencode和qrcode。

一、用pyqrencode模块生成二维码

安装pyqrencode模块很复杂,依赖的东西也比较多,经过测试总结以下安装过程:

1、下载Cython:https://pypi.python.org/packages/source/C/Cython/Cython-0.19.1.tar.gz
安装:tar -zxf Cython-0.19.1.tar.gz && cd Cython-0.19.1 && python setup.py install

2、下载qrencode:http://fukuchi.org/works/qrencode/qrencode-3.4.2.tar.gz
安装前确认安装了yum install libpng-devel -y
安装:tar -zxf qrencode-3.4.2.tar.gz && cd qrencode-3.4.2 && ./configure && make && make install

3、下载Imaging:http://effbot.org/media/downloads/Imaging-1.1.7.tar.gz
安装:tar -zxf Imaging-1.1.7.tar.gz && cd Imaging-1.1.7 && python setup.py install

4、下载:https://codeload.github.com/bitly/pyqrencode/zip/master
安装:
unzip -q pyqrencode-master.zip
cd pyqrencode-master
easy_install cython
cython qrencode.pyx
python setup.py install
echo "/usr/local/lib">>/etc/ld.so.conf
ldconfig

5、用pyqrencode生成二维码
>>> from qrencode import Encoder
>>> encoder = Encoder()
>>> img = encoder.encode("hello python!", {'width':300})
>>> img.save("char.png")
char.png就是生成的二维码文件

二、用qrcode模块生成二维码

1、下载:https://pypi.python.org/packages/source/q/qrcode/qrcode-2.0.tar.gz
2、安装:tar -zxf qrcode-2.0.tar.gz && cd qrcode-2.0 && python setup.py install
3、用qrcode生成二维码
>>> import qrcode
>>> q=qrcode.main.QRCode()
>>> q.add_data("hello python!")
>>> q.make()
>>> m=q.make_image()
>>> m.save('char.png')

三、二维码的识别

解析二维码用到zbar模块,改模块在windowns下面是exe文件直接安装,比较简单,在linux下依赖的包比较多,安装过程就不在介绍,使用方法如下:
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就是二维的内容

本文出自 “王伟” 博客,请务必保留此出处http://wangwei007.blog.51cto.com/68019/1249265
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: