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计算一个序列的平均值的方法
Jul 11 Python
Python编程中对文件和存储器的读写示例
Jan 25 Python
python入门基础之用户输入与模块初认识
Nov 14 Python
解决PyCharm中光标变粗的问题
Aug 05 Python
利用Tkinter和matplotlib两种方式画饼状图的实例
Nov 06 Python
python3调用R的示例代码
Feb 23 Python
对python PLT中的image和skimage处理图片方法详解
Jan 10 Python
结合OpenCV与TensorFlow进行人脸识别的实现
Oct 10 Python
Python:二维列表下标互换方式(矩阵转置)
Dec 02 Python
Django后端发送小程序微信模板消息示例(服务通知)
Dec 17 Python
Python多线程的退出控制实现
Aug 10 Python
python 使用Tensorflow训练BP神经网络实现鸢尾花分类
May 12 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的数组与字符串的转换函数整理汇总
2013/07/18 PHP
PHP截取指定图片大小的方法
2014/12/10 PHP
5款适合PHP使用的HTML编辑器推荐
2015/07/03 PHP
js类中获取外部函数名的方法
2007/08/19 Javascript
js 学习笔记(三)
2009/12/29 Javascript
JQuery动态创建DOM、表单元素的实现代码
2011/08/09 Javascript
关于js new Date() 出现NaN 的分析
2012/10/23 Javascript
js同源策略详解
2015/05/21 Javascript
JavaScript设置、获取、清除单值和多值cookie的方法
2015/11/17 Javascript
理解JavaScript中Promise的使用
2016/01/18 Javascript
Bootstrap编写一个在当前网页弹出可关闭的对话框 非弹窗
2016/06/30 Javascript
angular内置provider之$compileProvider详解
2017/09/27 Javascript
Bootstrap Tooltip显示换行和左对齐的解决方案
2017/10/11 Javascript
vue.js中父组件调用子组件的内部方法示例
2017/10/22 Javascript
实现div内部滚动条滚动到底部和顶部的代码
2017/11/15 Javascript
Vue框架之goods组件开发详解
2018/01/25 Javascript
浅谈Vue 数据响应式原理
2018/05/07 Javascript
解决vue 打包发布去#和页面空白的问题
2018/09/04 Javascript
详解微信小程序之一键复制到剪切板
2019/04/24 Javascript
微信小程序scroll-view实现滚动到锚点左侧导航栏点餐功能(点击种类,滚动到锚点)
2020/06/11 Javascript
微信小程序实现列表的横向滑动方式
2020/07/15 Javascript
JS实现鼠标按下拖拽效果
2020/07/23 Javascript
centos下更新Python版本的步骤
2013/02/12 Python
Python httplib模块使用实例
2015/04/11 Python
Django中模版的子目录与include标签的使用方法
2015/07/16 Python
Python实现线性插值和三次样条插值的示例代码
2019/11/13 Python
python实现将两个文件夹合并至另一个文件夹(制作数据集)
2020/04/03 Python
CSS3中的元素过渡属性transition示例详解
2016/11/30 HTML / CSS
奥地利手表、香水、化妆品和珠宝购物网站:Brasty.at
2021/01/17 全球购物
python re模块和正则表达式
2021/03/24 Python
小学运动会入场式解说词
2014/02/18 职场文书
汽车检测与维修专业求职信
2014/07/04 职场文书
2014小学数学教研组工作总结
2014/12/06 职场文书
2015年行风建设工作总结
2015/05/15 职场文书
Python数据清洗工具之Numpy的基本操作
2021/04/22 Python
详解Vue的列表渲染
2021/11/20 Vue.js