Python 图形验证码库、二维码库的使用

图形验证码库  captcha

# 引入图形库
from captcha.image import ImageCaptcha

# 获取图像对象
image = ImageCaptcha(width=120, height=40, font_sizes=(30, 32, 36))
chars = "1234"
# 创建二维码对象
im = image.generate(chars)
# (1) 直接取值
img_val = im.getvalue()
# (2) 保存文件
file_name = "1.png"
im.save(file_name)

二维码库  qrcode

import qrcode
import os

# 创建二维码图像 err_level 0-3 错误由高到低 size每格像素大小
def make_qrcode(url="test", file_name="", size=8, err_level=0):
	if err_level == 3:
		error_correction = qrcode.constants.ERROR_CORRECT_L
	elif err_level == 2:
		error_correction = qrcode.constants.ERROR_CORRECT_M
	elif err_level == 1:
		error_correction = qrcode.constants.ERROR_CORRECT_Q
	else:
		error_correction = qrcode.constants.ERROR_CORRECT_H

	# 初始化二维码对象
	qr = qrcode.QRCode(
			 version=1,
			 error_correction=error_correction,
			 box_size=size,
			 border=4,
	 )

	# 添加要生成二维码的连接
	qr.add_data(url)
	qr.make(fit=True)

	file_content = file_name
	# 设置填充颜色与背景色
	img = qr.make_image(fill_color="black", back_color="white")

	# 是否要保存文件
	if file_name and isinstance(file_name, str):
	 # 保存文件
	 img.save(file_name)
	else:
	 # 直接输出
	 b = io.BytesIO()
	 img.save(b, "PNG")
	 file_content = b.getvalue()

	return file_content

# 直接调用即可
posted @ 2019-11-08 16:49  gz_xiaohai  阅读(538)  评论(0)    收藏  举报