时间:2020-07-29 python教程 查看: 1062
pip install qrcode
声明
import qrcode
QRCode 方法
qrcode.QRCode(
version=1,
error_correction=qrcode.ERROR_CORRECT_L,
box_size=10,
border=4,
image_factory=None,
mask_pattern=None
)
参数解释:
ERROR_CORRECT_L:大约7%或者更少的错误会被更正。
ERROR_CORRECT_M:默认值,大约15%或者更少的错误会被更正。
ERROR_CORRECT_Q:大约25%或者更少的错误会被更正。
ERROR_CORRECT_H:大约30%或者更少的错误会被更正。
常用方法:
其中的invert参数是决定是否反转颜色的参数,默认为假,如果为真的话会这样:
其他方法:
属性(这些大家基本都不用管):
qrcode可以生成三种不同的svg图像,一种是用路径表示的svg,一种是用矩形集合表示的完整svg文件,还有一种是用矩形集合表示的svg片段。第一种用路径表示的svg其实就是矢量图,可以在图像放大的时候可以保持图片质量,而另外两种可能会在格子之间出现空隙。
这三种分别对应了svg.py中的SvgPathImage、SvgImage和SvgFragmentImage类。在调用qrcode.make函数或者实例化QRCode时当作image_factory参数的值传入就可以了。
import qrcode.image.svg
if method == 'basic':
# Simple factory, just a set of rects.
factory = qrcode.image.svg.SvgImage
elif method == 'fragment':
# Fragment factory (also just a set of rects)
factory = qrcode.image.svg.SvgFragmentImage
else:
# Combined path factory, fixes white space that may occur when zooming
factory = qrcode.image.svg.SvgPathImage
img = qrcode.make('Some data here', image_factory=factory)
执行命令安装pymaging相关模块:
pip install git+git://github.com/ojii/pymaging.git#egg=pymaging
pip install git+git://github.com/ojii/pymaging-png.git#egg=pymaging-png
然后给image_factor参数传入qrcode.image.pure.PymagingImage就可以生成PNG图片了。
import qrcode
from qrcode.image.pure import PymagingImage
img = qrcode.make('Some data here', image_factory=PymagingImage)
这是作者推荐的方式,但是我个人认为,完全没有必要这么麻烦,直接用默认的 PIL 就可以获取 PNG 图片了,例子看下文。
make方法实际上就是在内部调用了QRCode(要转换的文本).make_image(),最后(默认)返回了一个PIL图像对象。
# 显示图片
qrcode.make("hello world!").show()
# 保存 PNG 图片
qrcode.make("hello world!").save('hello.png')
run_example 方法
生成一个作者项目网站地址的二维码并显示出来。
更多关于Python使用qrcode二维码库生成二维码方法请查看下面的相关链接