python有哪些好玩的应用实现,用python爬虫做一个二维码生成器
Posted python小玩家
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python有哪些好玩的应用实现,用python爬虫做一个二维码生成器相关的知识,希望对你有一定的参考价值。
python爬虫不止可以批量下载数据,还可以有很多有趣的应用,之前也发过很多,比如天气预报实时查询、cmd版的实时翻译、快速浏览论坛热门帖等等,这些都可以算是爬虫的另一个应用方向!
今天给大家分享一个二维码生成器的爬虫版本实现!
爬虫思路
网上有很多的二维码自动生成的网页,它可以将文本、名片、wifi分享等等都以二维码的形式生成,只需要用带有识别二维码的app就可以识别,比如手机浏览器一般就自带app哦!
PS:这里,普及一个很重要点,不要用带有支付功能的app随便扫码(支付宝、微信等等)!!!不要用带有支付功能的app随便扫码(支付宝、微信等等)!!!不要用带有支付功能的app随便扫码(支付宝、微信等等)!!!重要的事情说三遍!
那么,我们可以找到一个网页,通过requests的请求,去获得对方服务器生成的二维码,达到我们的目标!
大致流程是这样的:
请求URL==>构造请求表单==>获得服务器返回数据==>找到二维码图片地址==>下载图片
代码
代码其实很简单,短短20多行就可以
比较复杂的部分就是里面有几个参数,背景颜色、大小、容错率、形态等等,这里是写好的,也可以做成可输入的,这样比较灵活!最后,把它们做成一个简单的桌面程序
完整代码:
1 import requests 2 from tkinter import * 3 from PIL import Image,ImageTk 4 def get_ewm(): 5 url = \'http://www.wwei.cn/qrcode-wwei_create.html\' 6 strs = entry.get() 7 dat = { 8 \'data[text]\':strs, 9 \'data[type]\':\'index\', 10 \'level\':\'L\',#容错率 LMQH 11 \'moban_id\':0, 12 \'qrid\':0, 13 \'size\':555,#图像大小,单位px 14 \'style_setting[bcolor]\':\'# ffffff\', 15 \'style_setting[fcolor]\' : \'# 000000\', 16 \'style_setting[inptcolor]\': \'# 000000\', 17 \'style_setting[logo_border]\': 0, 18 \'style_setting[logo_height]\':46, 19 \'style_setting[logo_id]\':\'\', 20 \'style_setting[logo_width]\':46, 21 \'style_setting[mbtype_hb]\':0, 22 \'style_setting[protype]\':2,#圆点、直角、液态 0\\1\\2 23 \'style_setting[ptcolor]\':\'# 000000\'} 24 html = requests.post(url,data=dat).json() 25 img_url = html[\'png_url\'] 26 with open(\'123.png\',\'wb\') as f: 27 f.write(requests.get(img_url).content) 28 load = Image.open(\'123.png\') 29 im1 = ImageTk.PhotoImage(load) 30 label = Label(tk, image=im1,compound = \'bottom\') 31 label.image = im1 32 label.grid(row=2,columnspan=6) 33 if __name__ == \'__main__\': 34 tk = Tk() 35 tk.title(\'二维码生成器\') 36 tk.geometry(\'640x600+200+20\') 37 entry = Entry(tk, font=(\'微软雅黑\'),width=60) # 创建输入框 38 entry.grid(row=1, column=4) # 定位第1行3列 39 str_b = Button(tk,text=\'生成二维码\',command=get_ewm) 40 str_b.grid(row=1,column=5) 41 tk.mainloop()
如果想制作其他形式的,可以在主函数中继续添加entry控件接收参数,get_ewm()函数中自动调整相关参数就ok了!
以上是关于python有哪些好玩的应用实现,用python爬虫做一个二维码生成器的主要内容,如果未能解决你的问题,请参考以下文章