python签名设计
将一个签名网站http://www.uustv.com/的内容爬下来显示出来
代码:sign.py
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
from tkinter import * from tkinter import messagebox import requests import re from PIL import Image,ImageTk #模拟浏览器发送请求 def download(): startUrl = 'http://www.uustv.com/' name = enter.get() #name = name.strip() 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' html = result.text reg ='<div class="tu">.*?<img src="(.*?)"/></div>' imagePath = re.findall(reg,html) #图片完整路径 imgUrl = startUrl + imagePath[0] #获取图片内容 response = requests.get(imgUrl).content f = open('{}.gif'.format(name),'wb') f.write(response) #写入 #怎么把图片放到窗口上,显示图片 bm = ImageTk.PhotoImage(file ='{}.gif'.format(name)) label2 = Label(root,image = bm) #image属性 label2.bm = bm #绘图 label2.grid(row = 2,columnspan = 2) #创建窗口 root = Tk() #标题 root.title('签名设计') #窗口大小,中间的是小写的x,而不 是乘号 root.geometry('600x300') #窗口的初始位置 root.geometry('+400+300') #标签的控件 label = Label(root,text = '签名',font = ('华文行楷',20),fg = 'red') #grid pack place label.grid() #输入框 enter = Entry(root,font = ('微软雅黑',20)) #设置输入框的位置 enter.grid(row = 0,column = 1) #点击按钮 button = Button(root,text = '设计签名',font =('微软雅黑',20),command = download) #调用函数 #设置点击按钮的位置 button.grid(row = 1,column = 0) #消息循环,可以理解为显示窗口 root.mainloop()
关于图形界面GUI的操作之前博客已经说过了,主要就是三步:
1、root = Tk()
2、将标签和按钮等组件放进去
3、root.mainloop()
这里用的是requests去请求一个网页,post传入参数网址和data,data是怎么获取的呢?
打开浏览器,输入网址然后右键检查元素,点击网络,刷新页面删掉之前的记录,然后输入名字点击获取签名
然后得到页面如下:
注意右边的参数即是我们需要的data,但是输入的名字一直是变得,其余三个是不会变的。
然后将py文件转换成window上执行的exe文件
需要下载pyinstaller 和pywin32-221.win-amd64-py3.6 ,其中py3.6指的是python版本是3.6,amd64指的是64位,具体的视情况而定 。
https://sourceforge.net/projects/pywin32/files/pywin32/Build%20220/pywin32-221.win-amd64-py3.6.exe/download
下载安装后,在sign.py文件所在目录中执行pyinstaller -F sign.py 。
会在当前目录下生成类似如下的一个目录结构:
在dist目录中存在新生成的exe文件,可以点击执行,移动到别的目录一样可以执行 。
效果如下:
作者:Arish
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
个性签名:其实人跟树一样,越是向往高处的阳光,它的根就越要伸向黑暗的地底。