美文网首页python交流学习
Python爬虫生成二维码应用,突显个性味道

Python爬虫生成二维码应用,突显个性味道

作者: 78c40b03ee4e | 来源:发表于2019-02-22 16:13 被阅读3次

    前言

    Python爬虫不仅可以爬取各种各样的数据,还可以生成有趣好玩的应用,比如天气预报实时查询、cmd版的实时翻译、快速浏览论坛热门帖等等,这些都可以算是爬虫的另一个应用方向!本节为大家介绍一个二维码生成器的爬虫版实现


    爬虫思路

    网上有很多的二维码自动生成的网页,它可以将文本、名片、wifi分享等等都以二维码的形式生成,只需要用带有识别二维码的app就可以识别,比如手机浏览器一般就自带app哦!(所以随便扫码很容易被骗滴)

    这里,普及一个很重要点,不要用带有支付功能的app随便扫码(支付宝、微信等等)!!!不要用带有支付功能的app随便扫码(支付宝、微信等等)!!!不要用带有支付功能的app随便扫码(支付宝、微信等等)!!!重要的事情说三遍!

    那么,我们可以找到一个网页,通过requests的请求,去获得对方服务器生成的二维码,达到我们的目标!

    大致流程是这样的:

    请求URL==>构造请求表单==>获得服务器返回数据==>找到二维码图片地址==>下载图片

    小编推荐一个学python的学习qun 740322234
    无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

    代码

    代码其实很简单,短短几十行就可以

    import requests
    from tkinter import *
    from PIL import Image,ImageTk
    def get_ewm():
        url = 'http://www.wwei.cn/qrcode-wwei_create.html'
        strs = entry.get()
        dat = {
            'data[text]':strs,
            'data[type]':'index',
            'level':'L',#容错率 LMQH
            'moban_id':0,
            'qrid':0,
            'size':555,#图像大小,单位px
            'style_setting[bcolor]':'# ffffff',
            'style_setting[fcolor]' : '# 000000',
            'style_setting[inptcolor]':  '# 000000',
            'style_setting[logo_border]': 0,
            'style_setting[logo_height]':46,
            'style_setting[logo_id]':'',
            'style_setting[logo_width]':46,
            'style_setting[mbtype_hb]':0,
            'style_setting[protype]':2,#圆点、直角、液态 0\1\2
            'style_setting[ptcolor]':'# 000000'}
        html = requests.post(url,data=dat).json()
        img_url =  html['png_url']
        with open('123.png','wb') as f:
            f.write(requests.get(img_url).content)
        load = Image.open('123.png')
        im1 = ImageTk.PhotoImage(load)
        label = Label(tk, image=im1,compound = 'bottom')
        label.image = im1
        label.grid(row=2,columnspan=6)
    if __name__ == '__main__':
        tk = Tk()
        tk.title('二维码生成器')
        tk.geometry('640x600+200+20')
        entry = Entry(tk, font=('微软雅黑'),width=60)  # 创建输入框
        entry.grid(row=1, column=4)  # 定位第1行3列
        str_b = Button(tk,text='生成二维码',command=get_ewm)
        str_b.grid(row=1,column=5)
        tk.mainloop()
    

    比较复杂的部分就是里面有几个参数,背景颜色、大小、容错率、形态等等,这里是写好的,也可以做成可输入的,这样比较灵活!最后,把它们做成一个简单的桌面程序

    如果想制作其他形式的,可以在主函数中继续添加entry控件接收参数,get_ewm()函数中自动调整相关参数就ok了!

    相关文章

      网友评论

        本文标题:Python爬虫生成二维码应用,突显个性味道

        本文链接:https://www.haomeiwen.com/subject/unpeyqtx.html