Python 二维码的读取与生成演示
- ① 使用链接生成二维码
- ② 读取二维码里的链接
[ 文章推荐 ]
Python 绘制中国地图:使用 pyecharts 最新版本绘制中国地图实例详解,个性化地图定制及常用参数解析
① 使用链接生成二维码
通过 pip install qrcode
安装 qrcode 库来实现链接生成二维码。
import qrcode
def create_qc_code(url):
'''
链接生成二维码里
'''
# 可选参数box_size、 border
qr = qrcode.QRCode(box_size=10, border=2)
# 添加链接
qr.add_data(url)
# 生成二维码,默认是常规白底黑色填充的
img = qr.make_image(fill_color='black', back_color='white')
# 展示图片
img.show()
# 可以使用img.save()保存图片到本地
img.save("百度查询北京天气.png")
# 百度查询北京天气的链接
url = 'https://www.baidu.com/s?ie=UTF-8&wd=%E5%8C%97%E4%BA%AC%E5%A4%A9%E6%B0%94'
create_qc_code(url)
生成的图片微信扫描后可以跳转到百度查询北京天气的页面。
② 读取二维码里的链接
现在用上面生成的图片演示下二维码读取链接。
用到的是 pyzbar 库。
from pyzbar.pyzbar import decode
from PIL import Image
def read_qc_code(img):
'''
读取二维码里的链接
'''
barcodes = decode(img)
urls = ""
# 图片包含多个二维码,识别成功会返回多个链接
for barcode in barcodes:
url = barcode.data.decode("utf-8")
urls = urls + "\n" + url
return urls
img = Image.open("百度查询北京天气.png")
urls = read_qc_code(img)
print("获取到的链接:" + urls)
可以看到跟我生成二维码时的链接是一样的。
如果图片里包含多个二维码,识别成功会返回多个链接。
喜欢的点个赞❤吧!