python3二维码生成工具

  本人python学习菜鸟一枚,随着对python的学习,感觉python越来越好玩了,上次用接口查询IP地址后,又看到有道词典查询、二维码生成等接口相关的方法,并对其做了简单的尝试,确实是挺好玩的。所以将整个过程记录下来。分享在此,供大家一起交流学习。

方法一、调用NowAPI接口实现二维码


1、基本环境

  系统:windows 7

 开发环境:pycharm python3

相关的模块和库  urlib  urllib.parse

2、NowAPI简单的介绍

 NowAPI是一家 数据服务公司,提供大量的数据接口,对于我们这种学习的菜鸟来说有很多东西可以用来实践,并且有一部分在某个范围内是免费的,对于我们刚接触开发实践是足够了。还有一些python2的示例程序,很不。

官网:https://www.nowapi.com/

国内类似的公司:

聚合数据:https://www.juhe.cn/docs 

百度数据接口:http://apistore.baidu.com/    

极速数据:https://www.jisuapi.com/

    都能提供很多的数据接口,提供免费和收费数据等合作方式。

3、NowAPI二维码接口介绍

1
2
3
4
5
6
7
8
9
10
11
在线生成二维码
注:API URL可直接在html img标签中使用,如data参数为中文请先urlencode( '中文' )请求示例: http: / / api.k780.com: 88 / ?app = qr.get&data = test&level = L&size = 6 注意: 如果您的使用量巨大请联系网站客服备注referer。
请求方式
Get / Post
请求url
HTTP: http: / / api.k780.com: 88
HTTPS: https: / / sapi.k780.com请求参数
参数类型是否必须备注
data    string    是    需要生成二维码内例如:test    
level    string    否    纠错级别 < 'L' , 'M' , 'Q' , 'H' >,默认: L    
size    number    否    大小 < 1 - 20 >,默认:  6

4、思路

   根据接口文档我们可以采用post提交,而post在python里面主要是带参数提交这里主要是用字典实现参数组合,而用urllib.parse模块的urlencode()方法实现参数和url的组合拼接。然后访问完整url,获取请求回应并写入文件即可。

5、源代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#/usr/bin/env python
#_*_coding:utf-8_*_
import  json
import   urllib
import  requests
import   urllib.parse
url = 'http://api.k780.com:88'
def   msgdata(send_msg):   #定义一个简单的函数
     msg  =  {}
     msg[ 'app' =  "qr.get"
     msg[ 'data' =  send_msg
     msg[ 'level' =  'L'
     msg[ "size" =  6
     data  =  urllib.parse.urlencode(msg).encode( "utf-8" )
     response  =  urllib.request.urlopen(url, data)
     result  =  response.read()
     with  open (send_msg +  "s.jpg" "wb" ) as  f:
         f.write(result)
list2 = [ "mysqlDBA" , "docker运维开发工程师" , "云计算巨头openstack" , "redis" , "Centos" , "mongodb" , "swarm" ]
for    in  list2:
     msgdata(i)

生成结果示例:

1、centos                     2 、docker运维工程师                 3、mongodb

wKiom1jdvPjjTEh0AAABFIwgT3M918.jpg-wh_50wKioL1jdvPnDR7IKAAABXvcKe5o780.jpg-wh_50wKioL1jdvPnxE_ZFAAABFnQJe-o995.jpg-wh_50

4、mysqlDBA                   5、redis                                6、swarms

wKiom1jdvPqQGhcxAAABEsWLUNA688.jpg-wh_50wKioL1jdvPuRAcy7AAABHuA1f0U991.jpg-wh_50wKiom1jdvPuQrbl7AAABGWCRQwc035.jpg-wh_50

7、云计算巨头openstack

wKioL1jdvPzBI2slAAABVCzURls603.jpg-wh_50

总结和分析: 以上的二维码是可以用微信等扫一扫等功能扫描出结果。

方法二、依赖qrcode和image包生成二维码


依赖安装

1
2
3
4
pip  install  qrcode
 
qrcode 依赖 Image 这个包:
pip  install  Image

附代码:

1
2
3
4
5
6
7
8
#!/bin/bash/env  python
#-*-congding:utf8-*-
import  qrcode
strlist=[ "http://www.baidu.com" , "MySQLDBA" , "Docker云计算" , "Openstack云计算" ]
for   index,item   in   enumerate(strlist) :
  img=qrcode. make (item)
  with   open ( "D:\pythontest\erweima\image" +str(index)+ ".png" , "wb" ) as f:
   img.save(f)



本文转自 tianya1993 51CTO博客,原文链接:http://blog.51cto.com/dreamlinux/1912017,如需转载请自行联系原作者
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值