阿小信大人的头像
Life is short (You need Python) Bruce Eckel

用python生成和解析二维码2014-09-02 05:08

解析QRCode需要用到第三方库,我用的是zbar,当然还有PIL。

Windows安装zbar:

1 下载zbar_setup.exe 地址:http://sourceforge.net/projects/zbar/files/zbar/0.10/zbar-0.10-setup.exe/download

2 easy_install zbar

然后到zbar_setup.exe的安装目录的bin文件夹下找出所有dll文件,然后拷贝到python根目录,这个太淡疼,貌似不同系统不一样,xp的话应该是放在lib/site-packages下,win7的话要放根目录才能正常import。

Linux安装zbar:直接安装zbar*

解析二维码:

def get_QR():
    scanner = zbar.ImageScanner()
    scanner.parse_config("enable")
    pil = Image.open("./QR.gif").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

fedora 16下生成二维码

1 安装 qrencode-devel

2 下载bitly-pyqrencode-1cfb23c。 http://github.com/bitly/pyqrencode 和 libqrencode-python。https://code.google.com/p/libqrencode-ctypes/ 分别解压后进去用setup.py安装(貌似只安装第一个也行)

>>> from qrencode import Encoder
>>> encoder = Encoder()
>>> img = encoder.encode("学你妹的长", {'width':300})
>>> img.save("./char.png")
>>> quit()

windows下生成二维码:easy_install qrcode

>>> import qrcode
>>> qrcode.main
<module 'qrcode.main' from 'C:\Python26\lib\site-packages\qrco
>>> q=qrcode.main.QRCode()
>>> q.add_data("hello")
>>> q.make()
>>> q.make_image()
<PIL.Image.Image image mode=1 size=290x290 at 0x1B35E90>
>>> m=q.make_image()
>>> m.save('d:/1.gif')
>>>

google也有直接生成二维码的api:https://chart.googleapis.com/chart?cht=qr&chs=200x200&choe=UTF-8&chld=L%7C4&chl=http://www.lamp100.com

如果您觉得从我的分享中得到了帮助,并且希望我的博客持续发展下去,请点击支付宝捐赠,谢谢!

若非特别声明,文章均为阿小信的个人笔记,转载请注明出处。文章如有侵权内容,请联系我,我会及时删除。

#Python#  
分享到:
阅读[2547] 评论[0]

你可能也感兴趣的文章推荐

本文最近访客

发表评论