我要做这条GAI最骚气的二维码

小感慨

注册公众号一周了,从什么都不知道的小小白,到了解皮毛的小白,但不踏出第一步,就永远不会达到预期的目标。
上学时,老师说过一句话,人对事物的了解分为四个阶段:

  • 不知道不知道
  • 知道不知道
  • 不知道知道
  • 知道知道

怎么说?打个比方:

  1. 大家手机都关注了好多公众号(但很多人的手机中缺少我这么优秀的公众号,哈哈…),提到公众号,我们都感觉这东西稀松平常有什么的,so easy。这就是不知道不知道,我们不知道自己其实对他/她/它有很多地方都不了解。
  2. 我想申请一个公众号自己玩玩,才发现原来好多东西,我不知道。从申请流程,到注册验证、发文规则、自动回复、页面模板,我都不了解。此时我才知道自己不知道
  3. 那么不知道知道呢?通过几天的摸索,我设置的关注后的自动回复,添加了自定义菜单,了解到一个公众号一天只能发一篇文章,在不知不觉中,走向不知道知道。
  4. 而经过这两天,我迈入了知道知道的境界,知道什么?知道即便如清风Python这样坚持发帖的公众号(太不要脸…),前期不厚着脸皮让人关注我,一样不会有什么粉丝。
为什么硬扛二维码

看一些牛13的公众号,他们的菜单可以直接跳转到anywhere,可我不行。为毛,这就是普通玩家和人民币玩家的区别。
自定义菜单.png

想要指哪点打哪点,需要认证,那么怎么认证?个人的公众号没办法认证,以公司、企业注册的公众号,有工商许可的才可以。
那么普通玩家怎么办?只能吧我们想要的跳转的地址,通过网上的二维码生成工具,制作成二维码点击下载图片后识别进行跳转喽。

什么是二维码(百度知道)

二维码又称二维条码,常见的二维码为QR Code,QR全称Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的Bar Code条形码能存更多的信息,也能表示更多的数据类型。
二维条码/二维码(2-dimensional bar code)是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的;在代码编制上巧妙地利用构成计算机内部逻辑基础的“0”、“1”比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处理:它具有条码技术的一些共性:每种码制有其特定的字符集;每个字符占有一定的宽度;具有一定的校验功能等。同时还具有对不同行的信息自动识别功能、及处理图形旋转变化点

python制作二维码

如果你是一名风风火火闯九州的梁山好汉,那么推荐你使用qrcode,因为它简单粗暴,三行代码就能生成二维码

pip install qrcode

# -*- coding: utf-8 -*-
# @Author   : 王翔
# @JianShu  : 清风Python
# @Date     : 2019/6/5 23:58
# @Software : PyCharm
# @version  :Python 3.6.8
# @File     : with_qrcode.py

import qrcode

txt = 'https://www.jianshu.com/u/d23fd5012bed'
img = qrcode.make(txt)
img.save('qingfeng.png')

这里用so easy才是正确的语法…

那么如果你像我一样,要做这条GAI,最骚气的二维码呢?使用MYQR

pip install myqr

这是他的GitHub主页:https://github.com/sylnsfar/qrcode,你想知道的不想知道的,该知道的不该知道的,都可以通过这里了解。但秉承雷锋精神,我还是简单的说下:

参数含义详细
words二维码指向链接str,输入链接或者句子作为参数
version边长int,控制边长,范围是1到40,数字越大边长越大,默认边长是取决于你输入的信息的长度和使用的纠错等级
level纠错等级str,控制纠错水平,范围是L、M、Q、H,从左到右依次升高,默认纠错等级为H
picture结合图片str,将QR二维码图像与一张图片相结合,生成图片二维码
colorized颜色产生的图片类型,黑白(False)、彩色(True)的
contrast对比度float,调节图片的对比度,1.0 表示原始图片,更小的值表示更低对比度,更大反之。默认为1.0
brightness亮度float,调节图片的亮度,其余用法和取值与 contrast 相同
save_name输出文件名str,默认输出文件名是"qrcode.png",格式可以是 .jpg 、.png 、.bmp 、.gif
save_dir存储位置str,默认存储位置是当前目录

为什么说myqr不是梁山好汉选择的模块,是因为它难吗?不是!
是因为它骚气吗?不全是…那是因为什么?
因为它可以生成带背景图片/动画的二维码,然后你将会用大量的时间去找,哪些gif的图片够骚气啊!
那么,如何实现呢?代码其实很简单:

# -*- coding: utf-8 -*-
# @Author   : 王翔
# @JianShu  : 清风Python
# @Date     : 2019/6/6 0:20
# @Software : PyCharm
# @version  :Python 3.6.8
# @File     : with_myqr.py

from MyQR import myqr

myqr.run(
    words='http://weixin.qq.com/r/wByQiDXEZWgarXHr90nS',
    picture='panda.gif',
    colorized=True,
    save_name='qingfeng.gif',
)

来看一个效果:
myqr.gif

转换成gif,会比单独的二维码慢一些,但牺牲几秒钟,成就装13之路还是值得的啊!

二维码解析

那么,既然说到了制作二维码,就该谈谈,怎么解析二维码了?该用什么库呢…

pip install pyzbar

# -*- coding: utf-8 -*-
# @Author   : 王翔
# @JianShu  : 清风Python
# @Date     : 2019/6/6 1:14
# @Software : PyCharm
# @version  :Python 3.6.8
# @File     : with_pyzbar.py

from pyzbar import pyzbar
from PIL import Image

image = Image.open('qingfeng.gif')
txt_list = pyzbar.decode(image)
for txt in txt_list:
    barcodeData = txt.data.decode("utf-8")
    print(barcodeData)

就拿刚才咱们创建的qingfeng.gif来做验证吧,如果动态的二维码都能解析,其他还不是分分钟的事情!走你…
pyzbar.gif

是不是跟咱们传输的东西一毛一样?

打包二维码工具

既然这么好玩,剩下的工作就是找你们喜欢的gif图片,然后编辑你们想要的文字(文章、笑话、链接等等都可以),使用工具生成二维码了。
你们说没有python环境?没关系,我使用pyinstaller 打包成了单独的exe文件,你们可以按照我这样去执行:
二维码工具.gif

说明:由于是直接使用python工具打包的exe文件,没有license等,杀毒软件可能会报毒(至少我的qq管家是这样,这个没办法,如果报毒只能先关了杀软了。)或者你们安装python自己自己搞也行。
文章所用到的代码和图片,以及生成的exe文件,我放在了百度云上,公众号后台回复**“二维码”**即可获取。

好了,今天的内容就到这里,如果觉得有帮助,记得点赞支持。欢迎大家关注我的公众号,获取更多Python相关的知识,并有整理好的各类福利数据供大家下载:
清风Python.jpg

©本文由作者:清风Python 原创 如需转载请注明

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值