python签名设计

Posted 双皮奶不要红豆

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python签名设计相关的知识,希望对你有一定的参考价值。

将一个签名网站http://www.uustv.com/的内容爬下来显示出来

代码:sign.py

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()
View Code

关于图形界面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文件,可以点击执行,移动到别的目录一样可以执行 。

 

效果如下:

 

以上是关于python签名设计的主要内容,如果未能解决你的问题,请参考以下文章

Python 向 Postman 请求代码片段

python [代码片段]一些有趣的代码#sort

使用 Python 代码片段编写 LaTeX 文档

python 机器学习有用的代码片段

python 代码片段和解决方案

python 来自puddletag的代码片段