原标题:佩服!我用Python设计了一个签名软件

临近年末,大家都忙着签发礼品,写的一手好的签名,会让大家更有成就感,今天,小安就带领大家来设计一个基于tkinter+爬虫的签名设计软件,方便大家设计签名。

要设计这款软件,就需要了解tkinter与爬虫的结合,如何将二者结合起来进行运用,是我们需要掌握的知识点。

先睹为快

1.设计软件界面

首先是输入姓名,然后通过下拉框来选择我们喜欢的字体。这里我们选择了四种字体形式作为展示。然后点击设计签名后,便会将设计好的姓名展示出来,如下图所示:

设计一个python程序项目 用python做设计_设计一个python程序项目

虽然界面比较简陋,但是却实现了对于签名的设计,是不是觉得很神奇。界面设计的代码如下图所示:

设计一个python程序项目 用python做设计_数据_02

1).声明一个tk对象,初始化屏幕大小,并设定屏幕在(400,200)

2).屏幕上放一个label标签对象和一个Entry输入框对象,然后水平分布

3).第二行主要是放一个按钮和一个下拉框,下拉框里面的事件我们用一个函数Fonts()来绑定

4).最最关键是我们的设计签名这个按钮,一旦我点击了这个按钮我要呈现设计的签名,这里我们用个Get_sign来处理,下面会重点介绍。

2.爬取签名图片

下面是对于爬虫技术的应用,我们所设计的软件,说到底还是利用爬虫技术进行实现。打开我们刚才签名设计的网页,进入开发者模式,点击network选项,通过不断的进行设计签名,我们可以发现re13.php不断地出现,而且是Method方法是post,如下图所示 :

设计一个python程序项目 用python做设计_数据_03

点击进去查看preview,便可以发现我们所需要的设计签名。没错,这就是我们所需要找到的切入点。

查看它的请求url为:http://www.yishuzi.com/b/re13.php,而其提交的表单如下图所示:

设计一个python程序项目 用python做设计_数据_04

上图中,我们需要关心的是id和id1,其分别代表我们的姓名和设计的字体形式,也是我们需要构造的数据。明确了数据的构造,我们就可以利用requests库来模拟浏览器进行数据的请求,返回我们需要的数据。

由于网页返回的内容很简单,是以图片的形式展示,可以直接采用正则表达式的方式去提取图片,然后保存到本地,然后利用PIL和tkinter库进行展示。部分代码如下图所示:

设计一个python程序项目 用python做设计_设计一个python程序项目_05

其实就是一个爬虫,然后下载图片最后图片解析并保存到本地。然后把图片显示PTL 这个库来读取并显示。

Python就是这么有趣好玩,很多时候生活中的小的需求,小的灵感一闪而过,你应该把它记下来,动手写写代码并把它实现了,相信当你的代码运行成功的那一刻,你会非常有成就感。