Xiaoxia[PG]

Python里使用zbar识别二维码

我的代码、我的分享42 条评论

今天研究数据库里的微信群二维码图片,很多人上传的图片并不是正确的群二维码,而是个人微信、公众号或者是一个手机充值流量的入口。为了把这些不合格的二维码挑选出来,只能一个个识别了。找了网上一些接口的,测试了一下不但限制频率为一秒2个,还很多识别不出来,看报错用的是zxing这个库,最后只能想其他方法。

在CentOS7上安装了zbar,没有找到el7的rpm,只好自己编译。研究出编译时使用一些参数可以避免安装一些不必要的包。为了virtualenv里的python能用,编译时候要指定安装到/usr。

编译文件不多,一下就完了。步骤如下:

./configure --disable-video --without-qt --without-gtk --without-x --prefix=/usr
make
sudo make install

应该还需要安装ImageMagick,libjpeg-devel,zlib-devel之类的库,python环境里需要安装zbar和PIL。

上测试代码:

import zbar
from PIL import Image

scanner = zbar.ImageScanner()
scanner.parse_config('enable')
img = Image.open('./test.jpg').convert('L')
w, h = img.size
zimg = zbar.Image(w, h, 'Y800', img.tobytes())

scanner.scan(zimg)

for s in zimg:
    print s.type, s.data

胶水语言就是强大,懂python的人应该能长寿。
识别速度觉得还可以,正确率非常高。基本上我的8w多的二维码都识别正确了。识别速度大概每秒几十张图吧,已经很满意。我的图片大小在10~50kb左右。

撰文记之,以便其他人有需要。不知不觉又通了个宵。。。

#python#qrcode

42 条评论

  1. Linux 桌面环境下可以用这一个命令:
    import :- | zbarimg :-
    然后在屏幕上画一个框框住QR码,就能识别。

  2. 虾哥牛呀,通宵搞么。

    1. 创业通宵是常事~

    2. 因为深夜没多少用户,方便更新,服务器挂一会也没关系~~

      1. 哇。不知不觉已经毕业了?创业啦?一定会成的。多多说说创业的事情,估计大家都会出力的。

        1. 好的,创业起步很快,正需要大家的支持呢!

  3. 怎么获得了那么多群二维码?这是要做坏事?

    1. 大数据分析 🙂

  4. 不搞电影搞创业去了啊

    1. 总是觉得排电影跟创业很接近 😀

  5. 大神,MYQQ+是不是你写的。

    1. 我只写过一个myqq是终端下跑的。

  6. 小虾,你好,请教一下,我把路由器安装Luci,结果中间报错了,我也没仔细看,就重启了下,结果路由开机就提示:Your JFFS2-partition seems full and overlayfs is mounted read-only. Please try to remove files from /overlay/upper/... and reboot!系统所有东西都不可操作了,能帮忙指点一二吗?谢谢了。

  7. 听说创业开上保时捷了

    1. 你的博客也很久没有更新了

  8. PIL之类的库用pip安装吧?在安装之前是不是要保证libjpeg之类都装好?

  9. 创业做的是关于什么的呢

  10. 小虾你好久没有更新博客了,好想以前你的博客,天天有好玩的玩意出来。

    1. 我也希望是这样 🙂

  11. 感觉博客好久都没有更新了。

    1. 是啊,在创业呢,等啥时候搞出一个上市公司

      1. 是搞哪方面的创业呢,那个dianying.fm似乎也没什么消息了,微博也没看到更新。

        1. 现在做荔枝微课

  12. 小虾,你最近几年不更新博客了,忙啥去了?赚大钱去了嘛?还是去哪个IT公司当CTO去了啊?

    1. 已经知道了,看了上面那条评论,荔枝微课,查了查,CEO诶,恭喜恭喜,祝单位飞黄腾达。

  13. 小虾,我想问下,那个手撕包菜现在不能用了吗?

  14. 小虾上福布斯30 under 30了啊!好厉害

  15. 名称:宇宙湾
    简介:主要是大数据和人工智能的原创文章。
    网址:https://yuzhouwan.com/
    头像:https://picture.yuzhouwan.com/yuzhouwan_logo_128x128.ico

    大佬大佬,友链否

    1. 现在还有人写博客呀。

  16. 这个小站还在的呀,十几年的老粉过来重温下~ 万一哪天突然更了呢;)

  17. xiaoxia你好久没更新博客了,啥时候像以前那样开源些你的作品啊

  18. 虾哥啥时候再发一些自己写的软件作品啊,好期待以前的日子。

  19. 2022 年中秋,来考古。

  20. 啥时候更新啊

  21. 小虾啥时候更新博客

  22. 现在是2024年,虾哥的博客还能打开,怀念一下

  23. dianyingFM最早的用户,一晃十几年过去了,无意中想到这里看看。
    不晓得小虾怎么样呢?

    1. 我还在开源圈活跃,比如小智AI:https://github.com/78/xiaozhi-esp32

发表评论

评论会经过自动审核,链接请勿超过 3 个。