python3爬虫之设计签名小程序


Posted in Python onJune 19, 2018

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

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

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

python3爬虫之设计签名小程序

然后随便输入名字

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是怎么获取的呢?

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

然后得到页面如下:

python3爬虫之设计签名小程序

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

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

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

Python 相关文章推荐
Python中的CURL PycURL使用例子
Jun 01 Python
跟老齐学Python之再深点,更懂list
Sep 20 Python
Python引用类型和值类型的区别与使用解析
Oct 17 Python
python抓取文件夹的所有文件
Feb 27 Python
Python绘制的二项分布概率图示例
Aug 22 Python
Pyqt5 实现跳转界面并关闭当前界面的方法
Jun 19 Python
python对XML文件的操作实现代码
Mar 27 Python
python代码实现图书管理系统
Nov 30 Python
python 实现简易的记事本
Nov 30 Python
Python实现小黑屋游戏的完整实例
Jan 06 Python
Python打包exe时各种异常处理方案总结
May 18 Python
Python编程中Python与GIL互斥锁关系作用分析
Sep 15 Python
Python GUI Tkinter简单实现个性签名设计
Jun 19 #Python
TensorFlow数据输入的方法示例
Jun 19 #Python
深入分析python中整型不会溢出问题
Jun 18 #Python
Python登录注册验证功能实现
Jun 18 #Python
详解python3中zipfile模块用法
Jun 18 #Python
python爬取个性签名的方法
Jun 17 #Python
Python爬虫包BeautifulSoup学习实例(五)
Jun 17 #Python
You might like
PL-880隐藏功能
2021/03/01 无线电
PHP4 与 MySQL 数据库操作函数详解
2006/12/06 PHP
php桌面中心(一) 创建数据库
2007/03/11 PHP
php使用curl存储cookie的示例
2014/03/31 PHP
ThinkPHP使用PHPExcel实现Excel数据导入导出完整实例
2014/07/22 PHP
php中多维数组按指定value排序的实现代码
2014/08/19 PHP
关于PHP内置的字符串处理函数详解
2017/02/04 PHP
thinkPHP5.0框架自动加载机制分析
2017/03/18 PHP
浅谈php://filter的妙用
2019/03/05 PHP
JS解密入门之凭直觉解
2008/06/25 Javascript
JavaScript 高级语法介绍
2009/06/15 Javascript
javascript 流畅动画实现原理
2009/09/08 Javascript
当json键为数字时的取值方法解析
2013/11/15 Javascript
使用js判断当前时区TimeZone是否是夏令时
2014/02/23 Javascript
jQuery使用height()获取高度需要注意的地方
2014/12/13 Javascript
纯js实现手风琴效果
2020/04/17 Javascript
求js数组的最大值和最小值的四种方法
2017/03/03 Javascript
vue实现仿淘宝结账页面实例代码
2017/11/08 Javascript
基于vue框架手写一个notify插件实现通知功能的方法
2019/03/31 Javascript
vue-cli3单页构建大型项目方案
2020/04/07 Javascript
[03:03]DOTA2 2017国际邀请赛开幕战队入场仪式
2017/08/09 DOTA
[57:29]Alliance vs KG 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/17 DOTA
Python 第一步 hello world
2009/09/25 Python
python将unicode转为str的方法
2017/06/21 Python
Python 写入训练日志文件并控制台输出解析
2019/08/13 Python
Windows 下更改 jupyterlab 默认启动位置的教程详解
2020/05/18 Python
pycharm 关闭search everywhere的解决操作
2021/01/15 Python
使用HTML5做的导航条详细步骤
2020/10/19 HTML / CSS
全球领先的美容用品专卖店:Beauty Plus Salon
2018/09/04 全球购物
Can a struct inherit from another struct? (结构体能继承结构体吗)
2016/09/25 面试题
四川成都导游欢迎词
2014/01/18 职场文书
奥巴马的演讲稿
2014/05/15 职场文书
初中毕业典礼演讲稿
2014/09/09 职场文书
2016年“七一建党节”广播稿
2015/12/18 职场文书
《秋天的雨》教学反思
2016/02/19 职场文书
室外天线与收音机天线杆接合方法
2022/04/05 无线电