Python生成个性签名图片获取GUI过程解析


Posted in Python onDecember 16, 2019

这篇文章主要介绍了Python生成个性签名图片获取GUI过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

先来看看程序运行的样子:

Python生成个性签名图片获取GUI过程解析

Python生成个性签名图片获取GUI过程解析

Python生成个性签名图片获取GUI过程解析

所以,程序的原理是 从一个url = ‘

http://www.uustv.com/

'中爬取个性签名的图片。

在该网页中审查该图片的元素,然后找到该图片的imgur

使用正则表达式直接定位

程序的后面使用到了tkinter的 GUI简易界面,用于和用户的简单交互,非常方便。

整个程序的完整代码如下: (有任何问题欢迎留言讨论)

import tkinter as tk
from tkinter import messagebox
import requests
import re
from PIL import Image,ImageTk


def design():
  name=et.get()
 # print(name)
  name=name.strip()
  if name == '':
    messagebox.showinfo('提示',message='请输入姓名')
  else:
    #获取签名图片
    data={
      'word': name,
      'sizes': 60,
      'fonts': 'haku.ttf',   # jfcs.ttf个性签 zql.ttf 商务签  qmt.ttf连笔签  bzcs.ttf潇洒签  lfc.ttf草体签  haku.ttf合同签   yqk.ttf可爱签
      'fontcolor': '# 000000'
    }
    url='http://www.uustv.com/'

    result=requests.post(url,data)
    # print(result) Response [200]

    #设置编码
    result.encoding='utf-8'
    html=result.text
    #print(html) 网页源代码 b

    #正则表达式
    reg=r'<div class="tu"><img src="(.*?)"/></div>'
    imgpath=re.findall(reg,html)
    imgurl=url+imgpath[0]
    # print(imgurl)

    #保存图片
    response=requests.get(imgurl).content
    with open('{}.gif'.format(name),'wb')as f:
      f.write(response)

    #显示图片
    bm=ImageTk.PhotoImage(file='{}.gif'.format(name))

    label2=tk.Label(window,image=bm)
    label2.bm=bm
    label2.grid(row=2,columnspan=2)

#设置窗口
window=tk.Tk()
window.geometry('600x300+200+200')
window.title('签名设计')
#设置控件
label=tk.Label(window,text='姓名:',font=('宋体',20),fg='red')
label.grid()

et=tk.Entry(window,font=('宋体',20))
et.grid(row=0,column=1)

bt=tk.Button(window,text='设计签名',font=('宋体',15),width=10,height=2,command=design)
bt.grid(row=1,column=1)

window.mainloop()

值得注意的是,在headers里有不同的签名字体可以设置,但是同一名字文件会覆盖。

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

Python 相关文章推荐
在Python的Django框架中编写错误提示页面
Jul 22 Python
Python基于Socket实现的简单聊天程序示例
Aug 05 Python
Python实现的计数排序算法示例
Nov 29 Python
教你用Python写安卓游戏外挂
Jan 11 Python
Tensorflow 实现修改张量特定元素的值方法
Jul 30 Python
Python Django 简单分页的实现代码解析
Aug 21 Python
Python从文件中读取指定的行以及在文件指定位置写入
Sep 06 Python
Python面向对象封装操作案例详解 II
Jan 02 Python
如何基于Python实现自动扫雷
Jan 06 Python
基于python实现图片转字符画代码实例
Sep 04 Python
Python自动化xpath实现自动抢票抢货
Sep 19 Python
python数字转对应中文的方法总结
Aug 02 Python
Python列表切片常用操作实例解析
Dec 16 #Python
python之pymysql模块简单应用示例代码
Dec 16 #Python
python装饰器使用实例详解
Dec 14 #Python
python函数不定长参数使用方法解析
Dec 14 #Python
python如何实现不用装饰器实现登陆器小程序
Dec 14 #Python
python模块和包的应用BASE_PATH使用解析
Dec 14 #Python
python socket通信编程实现文件上传代码实例
Dec 14 #Python
You might like
PHP产生随机字符串函数
2006/12/06 PHP
Android App中DrawerLayout抽屉效果的菜单编写实例
2016/03/21 PHP
php使用goto实现自动重启swoole、reactphp、workerman服务的代码
2020/04/13 PHP
URL编码转换,escape() encodeURI() encodeURIComponent()
2006/12/27 Javascript
一些常用的JS功能函数代码
2009/06/23 Javascript
json 实例详细说明教程
2009/10/31 Javascript
JavaScript类型系统之基本数据类型与包装类型
2016/01/06 Javascript
javascript常见数字进制转换实例分析
2016/04/21 Javascript
JS中判断字符串中出现次数最多的字符及出现的次数的简单实例
2016/06/03 Javascript
Vue.JS入门教程之处理表单
2016/12/01 Javascript
jquery实现下拉框左右选择功能
2017/02/21 Javascript
vue中的非父子间的通讯问题简单的实例代码
2017/07/19 Javascript
使用express+multer实现node中的图片上传功能
2018/02/02 Javascript
Node.js成为Web应用开发最佳选择的原因
2018/02/05 Javascript
vue checkbox 全选 数据的绑定及获取和计算方法
2018/02/09 Javascript
webpack源码之loader机制详解
2018/04/06 Javascript
一个简单的node.js界面实现方法
2018/06/01 Javascript
jQuery实现仿京东防抖动菜单效果示例
2018/07/06 jQuery
微信小程序实现modal弹出框遮罩层组件(可带文本框)
2020/12/20 Javascript
python文件操作整理汇总
2014/10/21 Python
Python实现统计代码行的方法分析
2017/07/12 Python
Python利用Django如何写restful api接口详解
2018/06/08 Python
python实现爬取图书封面
2018/07/05 Python
Python获取命令实时输出-原样彩色输出并返回输出结果的示例
2019/07/11 Python
python3 批量获取对应端口服务的实例
2019/07/25 Python
浅谈Python中的异常和JSON读写数据的实现
2020/02/27 Python
python简单的三元一次方程求解实例
2020/04/02 Python
在keras里面实现计算f1-score的代码
2020/06/15 Python
html5是什么_动力节点Java学院整理
2017/07/07 HTML / CSS
初中生学习生活的自我评价
2013/11/20 职场文书
校园公益广告语
2014/03/13 职场文书
学雷锋标语
2014/06/25 职场文书
MySQL锁机制
2021/04/05 MySQL
Python Pandas pandas.read_sql函数实例用法
2021/06/21 Python
mysql连接查询中and与where的区别浅析
2021/07/01 MySQL
浅谈Redis位图(Bitmap)及Redis二进制中的问题
2021/07/15 Redis