zbar解码二维码和条形码示例

yipeiwu_com6年前Python基础

复制代码 代码如下:

#!/usr/bin/env python
# coding: u8
import os
import zbar
import Image
import urllib
import uuid
def qrRead(url):

uuid1 = uuid.uuid1()
filename=str(uuid1)+".jpg"
print uuid1
urllib.urlretrieve(url, filename)

# create a reader
scanner = zbar.ImageScanner()

# configure the reader
scanner.parse_config('enable')

# obtain image data
pil = Image.open(filename).convert('L')
width, height = pil.size
#pil.show()
raw = pil.tostring()

# wrap image data
image = zbar.Image(width, height, 'Y800', raw)

# scan the image for barcodes
scanner.scan(image)

tmpdata=''
# extract results
for symbol in image:
# do something useful with results
print symbol.type, '图片内容为:\n%s' % symbol.data
tmpdata=tmpdata+symbol.data

 
# clean up
del(image)
os.remove(filename)
return tmpdata
if __name__ == '__main__':
url = '//www.jb51.net' 
qrRead(url)


要安装 python-zbar 

检查启用了 universe 存储库。
检查 /etc/apt/sources.list 与 sudo,以确保您具有正确的权限使用您最喜爱的编辑器。
 
复制代码 代码如下:

sudo gedit /etc/apt/sources.list
 

确保包含 universe。

在发生任何更改后,您应该运行此命令以更新您的系统。
复制代码 代码如下:

sudo apt-get update

你现在可以安装这样的包。

安装 python-zbar
复制代码 代码如下:

sudo apt-get install python-zbar

这将安装 python-zbar 和它所依赖的任何其他包。

相关文章

Python常用小技巧总结

本文实例总结了Python常用的小技巧。分享给大家供大家参考。具体分析如下: 1. 获取本地mac地址: import uuid mac = uuid.uuid1().hex[-12...

基于多进程中APScheduler重复运行的解决方法

问题 在一个python web应用中需要定时执行一些任务,所以用了APScheduler这个库。又因为是用flask这个web框架,所以用了flask-apscheduler这个插件(...

python动态性强类型用法实例

本文实例分析了python动态性强类型用法。分享给大家供大家参考。具体如下: Python变量声明和定义 与C#不同,Python在使用变量之前无须定义它的类型,试着运行下面的例子:...

python实现数组插入新元素的方法

本文实例讲述了python实现数组插入新元素的方法。分享给大家供大家参考。具体如下: li=['a', 'b'] li.insert(0,"c") 输出为:['c', 'a'...

高质量Python代码编写的5个优化技巧

如今我使用 Python 已经很长时间了,但当我回顾之前写的一些代码时,有时候会感到很沮丧。例如,最早使用 Python 时,我写了一个名为 Sudoku 的游戏(GitHub地址:ht...