话不多说,先看效果图:
1.
实现过程
主要使用了python的Tkinter的GUI模块、爬虫常用的re和requests模块。因此需要一定了解一定基础的python语法,适合学习这个程序。
源码
from tkinter import *
from tkinter import messagebox
import re
import requests
from PIL import Image,ImageTk
def sign():
'''根据用户输入,发送给服务器'''
result=entry.get()
if result.strip() =='':
messagebox.showinfo('提示', message='请输入姓名!')
else:
data={
'word': result,
'sizes': '60',
'fonts': 'jfcs.ttf',
'fontcolor':'# 000000'
}
host_url='http://www.uustv.com/'
response=requests.post(host_url,data)
# 显示连接状态print(response)
#设置编码方式
response.encoding='utf-8'
text=response.text
#正则表达式筛选图片名字
img_name=re.findall(r'<div class="tu"><img src="(.*?)"/></div>',text)
#拼接成签名图片url
img_url=host_url+img_name[0]
response=requests.get(img_url)
with open('{}.gif'.format(result),'wb')as f:
f.write(response.content)
f.close()
#显示图片
bm=ImageTk.PhotoImage(file='{}.gif'.format(result))
label2=Label(root,image=bm)
label2.bm=bm
label2.grid(row=2,columnspan=2)
#创建窗口
root=Tk()
#设置大小和位置
root.geometry('500x300+458+234')
#设置标题
root.title('签名设计')
#设置标签组件
label =Label(root,text='签名',font=('华文行楷',20))
#网格布局
label.grid(row=0,column=0)
#输入框
entry=Entry(root,font=('华文行楷',20),fg='pink')
entry.grid(row=0,column=1)
#点击按钮、
button=Button(root,text='签名设计',font=('华文行楷',20),bg='pink',command=sign)
button.grid(row=1,column=1)
#显示窗口
root.mainloop()
传送门
链接:教学视频