python生成二维码

最近因为工作需要生成二维码,小编就去网上找了一些有关生成二维码的资料,最方便的有在线生成的,链接如下:

https://cli.im/

好用得很,无论链接,文字还是图片,音频,名片它都可以包办到位。


如果你打开上面的链接,发现已经很满足了,那我们这一期就结束了。







如果你并没有满足这一点,还是想要继续探索的话,那我们继续。


在查找过程中,小编发现python也有生成二维码这样一个很强大的库,这里我们介绍两个包,第一个是qrcode,第二个是myqr。


首先我们需要把环境装好,使用pip进行安装:

pip install qrcode

pip install myqr

640?wx_fmt=png


安装完之后我们便可以使用它了。

首先我们来看看qrcode是如何生成二维码的。


很简单,就5行:

# -*- coding: utf-8-*-

import qrcode

words='https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzU1NDcwNTE2OA==&scene=126#wechat_redirect'

img = qrcode.make(words)

img.save('test.png')

img.show()

看结果:

640?wx_fmt=png

生成了一张二维码,就是这么简单。



下面我们来认识一下myqr,myqr和qrcode比起来确实变得丰富了不少,它可以做简单的二维码,也可以做漂亮的二维码,还可以做动态的二维码,比如这样:640?wx_fmt=png

比如这样:

640?wx_fmt=gif

640?wx_fmt=gif

再比如这样:

640?wx_fmt=gif


又或者用你本人的照片,也都是ok的!

640?wx_fmt=png

(请无视小编那张难看的脸2_05.png



下面我就来教大家怎么去用它吧!

首先,我们上代码:

640?wx_fmt=png

(需要复制代码,点击阅读原文)


代码里的参数我们这边来讲解一下:

可以通过help(myqr)来获得介绍

Positional parameter
   words: str Optional parameters
   version: int, from 1 to 40
   level: str, just one of ('L','M','Q','H')
   picutre: str, a filename of a image
   colorized: bool
   constrast: float
   brightness: float
   save_name: str, the output filename like 'example.png'
   save_dir: str, the output directory


words:传入的网址url(以网页为示例)

version:使用的版本,1-40之间

level:图片的质量等级,目前只有LMQH可选

picture:使用的源图片的所在路径

colorized:是否为彩色,Ture是彩色,False为黑白

save_name:保存二维码的名字

save_dir:保存二维码的路径


将参数都填全了,我们就可以直接运行代码了。

运行后就会有这样的效果:

640?wx_fmt=png                640?wx_fmt=png 

640?wx_fmt=gif              640?wx_fmt=gif


640?wx_fmt=png

效果还不错!

大家动手来试试吧!



当然,在安装了myqr之后,我们也可以选择不敲代码,直接使用终端指令来完成图片的生成:

myqr "https://weixin.qq.com/cgi-bin/readtemplate?check=false&t=weixin_getdownurl_sms&s=download&from=100&stype=10037102" -v 1 -l Q -n "s_qr.gif" -p s.gif -con 1.2 -bri 1.2 -c

进入cmd终端,直接敲:

640?wx_fmt=png

myqr后面的参数我解释一下:


640?wx_fmt=png

-v 控制边长,范围是1至40,数字越大边长越大;

-l 控制纠错水平,范围是L、M、Q、H,从左到右依次升高。

-n 控制文件名,格式可以是 .jpg, .png ,.bmp ,.gif ;

-d 控制位置。

-c 可以使产生的图片由黑白变为彩色的。

-p 用来将QR二维码图像与一张同目录下的图片相结合,产生一张黑白图片。

-con 用以调节图片的对比度,1.0 表示原始图片,更小的值表示更低对比度,更大反之。默认为1.0。

-bri 用来调节图片的亮度,其余用法和取值与 -con 相同。


s.gif是你要传进去的图片,s_qr,gif是生成的二维码的名字。


如果想生成最简单最普通的二维码,可以直接在myqr后面加个想打开的网址就可以了:

myqr "https://weixin.qq.com/cgi-bin/readtemplate?check=false&t=weixin_getdownurl_sms&s=download&from=100&stype=10037102"

640?wx_fmt=png

生成图片(默认名字qrcode):

640?wx_fmt=png



如果想了解二维码的生成使用,项目地址:

https://github.com/sylnsfar/qrcode

如果想了解更多的关于python的内容,就请关注我吧!

(本篇文章的任何二维码都可以扫哦!2_02.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值