python zxing包解析二维码报UnicodeDecodeError错误解决办法

一般错误的原因是这个库不支持中文的解码(二维码内容包含中文)。

修改如下:

进入zxing.__init__.py代码中,类BarCode下,parse方法中:

找到下面这两行原代码如下:

1 raw = raw[:-1].decode()
2 parsed = parsed[:-1].decode()

修改为:

try:
    raw = raw[:-1].decode()
    parsed = parsed[:-1].decode()
except UnicodeDecodeError:
     raw = raw[:-1].decode(encoding = 'gbk')
     parsed = parsed[:-1].decode(encoding = 'gbk')  

保存,再次执行,问题解决。

posted @ 2021-01-18 14:51  荒野游侠  阅读(550)  评论(0编辑  收藏  举报