IT课程分享生活不易 我用pythonPython3自学 爬虫实战

Python生成个性二维码

2018-07-09  本文已影响116人  蓝桥云课

Python 生成个性二维码」是我们推出不久的新课,这篇文章教你如何使用 Python 基于MyQR实现生成普通二维码,带图片的艺术二维码,动态二维码。

先来看看效果图

实验环境

python: 3.5.2

实验准备

创建环境

打开终端,进入 Code 目录,并将其作为我们的工作目录。

$ cd Code

克隆MyQR库

$ git clone sylnsfar/qrcode

下载环境依赖

Code/ $ cd qrcode
qrcode/ (master) $ sudo pip3 install -r requirements.txt

下载所需资源文件并解压

qrcode/ (master) $ wget http://labfile.oss.aliyuncs.com/courses/1126/Sources.zip  #这里提供制作二维码所需要的图片资源
qrcode/ (master) $ unzip Sources.zip

FreeImage

由于虚拟环境缺少了一些FreeImage依赖。我们在这里手动添加。

shiyanlou根目录里打开终端:

shiyanlou/ $ mkdir .imageio && cd .imageio
.imageio/ $ mkdir freeimage && cd freeimage
freeimage/ $ wget http://labfile.oss.aliyuncs.com/courses/1126/libfreeimage-3.16.0-linux64.so

实验步骤

接下来,我们会自己制作普通二维码、带有图片的艺术二维码和动态二维码。

普通二维码

确保当前目录为qrcode,在命令行中输入 python3 ,进入 python3 环境:

qrcode/ (master) $ python3

在 python3 环境中输入以下代码:

>>>from MyQR import myqr
>>>myqr.run('https://www.shiyanlou.com')

大功告成,那么来看一看自己制作的第一张二维码图片吧!

先退出python3环境

>>>quit()

再使用火狐浏览器预览

qrcode/ (master) $ firefox qrcode.png

效果图:

快快拿起手机扫一扫,看看是否有效,若成功,将跳转到实验楼主页。

下面我们来详细的讲解一下myqr.run()函数里面的参数

带图片的艺术二维码

光是二维码,是否太单调了呢?没关系,我们能加上我们想要的图片,使二维码更具辨识度! 我们准备了实验楼的Logo:

当然,Sources文件夹里有更多的图片,你也可以选择你个人喜爱的一张来制作艺术二维码!

让我们将这张图加入到我们的二维码中,加入过程需要在参数里指定实验楼Logo图片的地址,我们也要设置新图片的保存名,以免和上一张二维码图片冲突。

>>>myqr.run(
...    words='https://www.shiyanlou.com',
...    picture='Sources/shiyanlouLogo.png',
...    save_name='artistic.png',
...)

再次退出python3环境

>>>quit()

使用火狐浏览器打开图片

qrcode/ (master) $ firefox artistic.png

黑白实验楼Logo二维码:

黑白的,似乎不是那么好看,彩色的如何呢? 实现彩色也非常简单,在参数里将 colorized 参数值设为 True

>>>myqr.run(
...    words='https://www.shiyanlou.com',
...    picture='Sources/shiyanlouLogo.png',
...    colorized=True,
...    save_name='artistic_Color.png',
...)

打开图片

qrcode/ (master) $ firefox artistic_Color.png

彩色实验楼Logo二维码:

动态二维码

其实生成动态二维码,并没有想象的那么复杂。 在这里,我们使用美丽的新垣结衣GIF!

新垣结衣GIF:

在生成动态二维码的过程中,值得注意的一点是,我们生成保存的文件也必须是.gif 格式哟。 让我们赶快开始!

>>>myqr.run(
...    words='实验楼 - 在线做实验,高效学编程',
...    picture='Sources/gakki.gif',
...    colorized=True,
...    save_name='Animated.gif',
...)

新鲜出炉的动图,新垣结衣动态二维码:

源码https://www.shiyanlou.com
MyQR源码解读及完整文档Python 生成个性二维码Python实验楼 - 实验楼
更多IT课程:实验楼 - 在线做实验,高效学编程

上一篇下一篇

猜你喜欢

热点阅读