python3爬虫之设计签名小程序

 更新时间:2018年06月19日 09:13:10   作者:three_co  
这篇文章主要为大家详细介绍了python3爬虫之写为朋友设计签名的小程序,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了python3设计签名小程序的具体代码,供大家参考,具体内容如下

首先,上一下要做的效果图:

先是这样一个丑陋的界面(我尽力了的真的!)

然后随便输入名字

然后点击按钮会显示出对应的个性签名:

这个是怎么实现的呢?

其实这个是将一个签名网站http://www.uustv.com/的内容爬下来显示了而已:

源代码如下:

from tkinter import * 
import requests 
from tkinter import messagebox 
import re 
from PIL import Image,ImageTk 
def download(): 
  startUrl = 'http://www.uustv.com/' 
  name = entry.get() 
  if not name: 
    messagebox.showinfo('提示','请输入名字!') 
  else: 
    data = { 
      'word':name, 
      'sizes':'60', 
      'fonts':'jfcs.ttf', 
      'fontcolor':'#000000' 
    } 
 
    result = requests.post(startUrl,data = data) 
    result.encoding = 'utf-8' 
 
    req = '<div class="tu"><img src="(.*?)"/></div>' 
    imgUrl = startUrl+(re.findall(req,result.text)[0]) 
    response = requests.get(imgUrl).content 
    with open('{}.gif'.format(name),'wb') as f: 
      f.write(response) 
    #im = Image.open('{}.gif'.format(name)) 
    #im.show() 
    bm = ImageTk.PhotoImage(file = 'E:\py\{}.gif'.format(name)) 
    label2 = Label(root, image = bm) 
    label2.bm = bm 
    label2.grid(row = 2,columnspan = 2) 
 
 
root = Tk() 
root.title('GUI') 
root.geometry('600x300') 
root.geometry('+500+200') 
label = Label(root,text = '签名',font = ('华文行楷',20)) 
label.grid(row=0,column = 0) 
entry = Entry(root,font = ('微软雅黑',20)) 
entry.grid(row = 0,column = 1) 
 
 
Button(root,text = '设计签名',font = ('微软雅黑',20),command = download).grid(row = 1,column = 0) 
 
root.mainloop() 

关于图形界面GUI的操作之前博客已经说过了,主要就是三步:

1、root = Tk()

2、将标签和按钮等组件放进去

3、root.mainloop()

这里用的是requests去请求一个网页,post传入参数网址和data,data是怎么获取的呢?

打开浏览器,输入网址然后右键检查元素,点击网络,刷新页面删掉之前的记录,然后输入名字点击获取签名

然后得到页面如下:

注意右边的参数即是我们需要的data,但是输入的名字一直是变得,其余三个是不会变的。

至于关于tkinter这些组件常用的有哪些,这里找到一篇好的博客供大家参考:tkinter模块常用参数(python3)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • python中range()与xrange()用法分析

    python中range()与xrange()用法分析

    这篇文章主要介绍了python中range()与xrange()用法,结合实例形式分析了range()与xrange()使用与效率上的区别,需要的朋友可以参考下
    2016-09-09
  • Python中方法链的使用方法

    Python中方法链的使用方法

    这篇文章主要为大家详细介绍了Python中方法链的使用方法,方法链(method chaining)是面向对象的编程语言中的一种常见语法,对方法链感兴趣的小伙伴们可以参考一下
    2016-02-02
  • Python计算时间间隔(精确到微妙)的代码实例

    Python计算时间间隔(精确到微妙)的代码实例

    今天小编就为大家分享一篇关于Python计算时间间隔(精确到微妙)的代码实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • 关于python字符串方法分类详解

    关于python字符串方法分类详解

    在本篇文章里小编给各位整理的是关于关于python字符串方法分类的知识点内容,有兴趣的朋友们学习下。
    2019-08-08
  • pandas中数据的排序与排名的具体使用

    pandas中数据的排序与排名的具体使用

    Pandas对数据进行排序和排名是非常常见的操作,本文主要介绍了pandas中数据的排序与排名的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-07-07
  • pandas中df.rename()的具体使用

    pandas中df.rename()的具体使用

    本文主要介绍了pandas中df.rename()的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • Python中json格式数据的编码与解码方法详解

    Python中json格式数据的编码与解码方法详解

    这篇文章主要介绍了Python中json格式数据的编码与解码方法,详细分析了Python针对json格式数据的编码转换操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2016-07-07
  • python-pymongo常用查询方法含聚合问题

    python-pymongo常用查询方法含聚合问题

    这篇文章主要介绍了python-pymongo常用查询方法含聚合问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • Python中字典的浅拷贝与深拷贝用法实例分析

    Python中字典的浅拷贝与深拷贝用法实例分析

    这篇文章主要介绍了Python中字典的浅拷贝与深拷贝用法,结合实例形式分析了字典浅拷贝与深拷贝的原理、区别与使用方法,需要的朋友可以参考下
    2018-01-01
  • python自然语言处理之字典树知识总结

    python自然语言处理之字典树知识总结

    这篇文章主要介绍了python自然语言处理之字典树知识总结,文中有非常详细的代码示例,对正在学习python的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04

最新评论