Python 二维码制作

先介绍python 二维码制作的第三方库

QRCode 、MyQR

QRCode 生成这个二维码只用三行

importqrcode

img= qrcode.make('hello qrcode !')

img.save('test.png')

安装导入QRCode

pip install qrcode

QRCode 多种自定义方法

mport qrcode

text= input("输入文字或URL:") #设置URL必须添加http://

img =qrcode.make(text)

img.save()#保存图片至本地目录,可以设定路径

img.show()

生成添加logo的二维码

defgetQRcode(strs, name):

qr=qrcode.QRCode(

version=1,

error_correction=qrcode.constants.ERROR_CORRECT_L,

box_size=10,

border=2,

)#添加数据

qr.add_data(strs)#填充数据

qr.make(fit=True)#生成图片

img = qr.make_image(fill_color="blue", back_color="white")

img= img.convert("RGBA") #RGBA

#添加logo

icon = Image.open("321.png")#获取图片的宽高

img_w, img_h =img.size

factor= 6size_w= int(img_w /factor)

size_h= int(img_h /factor)

icon_w, icon_h=icon.sizeif icon_w >size_w:

icon_w=size_wif icon_h >size_h:

icon_h=size_h#重新设置logo的尺寸

icon =icon.resize((icon_w, icon_h), Image.ANTIALIAS)print(icon)

w= int((img_w - icon_w) / 2)

h= int((img_h - icon_h) / 2)

img.paste(icon, (w, h), icon)#显示图片

plt.imshow(img)

plt.show()

img.save(name)returnimgif __name__ == '__main__':

getQRcode("https://music.163.com/song?id=36990266&userid=112961323", '01.png')

执行代码 程序报错

Traceback (most recent call last):

File"/Users/yyj/HelloBike/Bi_Test/demo/py_qrcode.py", line 96, in getQRcode("https://music.163.com/song?id=36990266&userid=112961323", '01.png')

File"/Users/yyj/HelloBike/Bi_Test/demo/py_qrcode.py", line 80, ingetQRcode

img.paste(icon, (w, h), icon)

File"/Users/yyj/anaconda3/envs/Adil/lib/python3.7/site-packages/PIL/Image.py", line 1470, inpaste

self.im.paste(im, box, mask.im)

ValueError: bad transparency mask

问题分析:

#添加logo

icon = Image.open("321.png")

因为我使用的图片格式 第一次使用了 jpg 后来我自己修改后缀为321.png导致,使用真正的png 图即可。

原图如右

结果如右

MyQR 生成动态二维码

defgakki_code():

version, level, qr_name=myqr.run(

words="http://labfile.oss.aliyuncs.com/courses/1126/Sources.zip", #可以是字符串,也可以是网址(前面要加http(s)://)

version=1, #设置容错率为最高

level='H', #控制纠错水平,范围是L、M、Q、H,从左到右依次升高

picture="gakki.gif", #将二维码和图片合成

colorized=True, #彩色二维码

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

brightness=1.0, #用来调节图片的亮度,其余用法和取值同上

save_name="gakki_code.gif", #保存文件的名字,格式可以是jpg,png,bmp,gif

save_dir=os.getcwd() #控制位置

)

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

python二维码_Python 二维码制作相关推荐

  1. python 二维列表_python二维列表

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 方法一:使用 lambda 关键词辅助对二维列表进行排序,lambda的使用方法 ...

  2. python用语句输入一个3*3的二维矩阵_python中二维数组的建立,输入和输出

    ''' for循环: for i in range(x,y,dir): pass 首先这个区间是左闭右开 其次dir在省略的情况下默认为1,就是每次加一,也可以指定 python的数组: python ...

  3. [转载] pythonjson构建二维数组_python二维键值数组生成转json的例子

    参考链接: python json 10: Datetime与json的相互转化 python二维键值数组生成转json的例子 今天出于需要,要将爬虫爬取的一些数据整理成二维数组,再编码成json字符 ...

  4. python解析二维码_Python二维码生成识别实例详解

    前言 在 JavaWeb 开发中,一般使用 Zxing 来生成和识别二维码,但是,Zxing 的识别有点差强人意,不少相对模糊的二维码识别率很低.不过就最新版本的测试来说,识别率有了现显著提高. 对比 ...

  5. python做动画视频教程_Python+Kepler.gl轻松制作酷炫路径动画的实现示例

    1. 简介 Kepler.gl相信很多人都听说过,作为Uber几年前开源的交互式地理信息可视化工具,kepler.gl依托WebGL强大的图形渲染能力,可以在浏览器端以多种形式轻松展示大规模数据集. ...

  6. python键盘输入数组_python 二维数组切割Python读取键盘输入的2种方法

    Python提供了两个内置函数从标准输入读入一行文本,默认的标准输入是键盘.如下: 1.raw_input 2.input raw_input函数raw_input() 函数从标准输入读取一个行,并返 ...

  7. python顺序表转置_Python:二维列表下标互换方式(矩阵转置)

    Python:二维列表下标互换方式(矩阵转置) 发布时间:2020-08-20 04:13:38

  8. python中二维数组_Python二维数组实际应用方法浅析

    Python数组的应用中在实际编程中是一个非常重要的应用技术,作为Python编程人员来说,必须要熟练的掌握这方面的所有应用技巧.那么,接下来,我们将会通过对Python二维数组的理解来为大家解读这方 ...

  9. python图像数据是几维数据_Python二维数据分析

    一.numpy二维数组 1.声明 1 importnumpy as np2 3 #每一个[]代表一行 4 ridership =np.array([5 [ 0, 0, 2, 5, 0],6 [1478 ...

  10. python输入二维数组_python 二维数组键盘输入

    原博文 2018-09-09 15:40 − 1 m = int(input()) 2 grid = [[] for i in range(m)] 3 for i in range(m): 4 lin ...

最新文章

  1. 【HDOJ】4333 Revolving Digits
  2. python 矩形补正方形
  3. 安装Ubuntu时,遇到自定义交换空间swap大小设置问题
  4. SEO配置信息操作文档
  5. linux ftp非隔离模式,FTP实验报告非隔离用户的使用教案.doc
  6. 51 nod 1624 取余最长路 思路:前缀和 + STL(set)二分查找
  7. python类与函数编程_Python类三种方法,函数传参,类与实例变量(一)详解
  8. VBS脚本获取安全标识符SID(Security Identifiers)的方法
  9. 我们已经不用AOP做操作日志了! | 原力计划
  10. C语言 二维数组行数和列数计算 - C语言零基础入门教程
  11. 程序设计与算法----递归之爬楼梯问题
  12. 两个三维向量叉积_线性代数的本质08 叉积
  13. swoole 启动流程_Swoole 启动一个服务,开启了哪些进程和线程?
  14. AR 圈最大收购案 Ubimax 10 亿“卖身”背后:究竟什么才是真正值钱的东西?
  15. 【数据结构和算法笔记】线性表的查找(平均查找长度,二分法,判定树)
  16. java变量-是否区分大小写?
  17. opengl 保留上一帧_历史上第一部长片动画,还真有点重口
  18. FileZilla Client 3.26.1 发布,FTP 解决方案
  19. 计算机管理中其它设备问号,Win10设备管理器中设备上有白色问号如何解决
  20. debian9.12的硬盘安装过程一

热门文章

  1. Microsoft Live Account for Mail, space, onecare
  2. 中国富豪掘第一桶金的九大方式
  3. QUIC成为了HTTP/3的标准传输协议!
  4. 负载均衡器 运行在2、3、4、7层之间的区别 [资料整理]
  5. bootStrap3 垂直居中
  6. mysql一张表建多个字段比较合适呢,答案来嘞
  7. TypeError:Cannot read property 'bind' of underfined(React)
  8. Pvr_Controller
  9. 牛客IOI周赛20-普及组
  10. Netty之编解码器框架