制作签名的软件 个性签名软件代码

晚上下班回来,我发现女朋友坐在书桌前“搞事情” 。不禁有点惊讶,居然没有葛优躺,居然没有刷B站!!!
但是看她时而抓头,时而写些什么 。
我就跑过去问:宝贝,你在干嘛呢?
她说:我今天签名字的时候发现自己写的名字好丑,回来就想着练一下,但是怎么都写不好 。
“不要着急,先去刷刷视频歇一下 。”
她丧气地走向了沙发…
看她这样,我心疼啊,得做点什么让她高兴一下 。灵机一闪,不如就给她做个个性签名软件吧!
思路说干咱就干!
略微想了一下,这事咱不能蛮干,毕竟不是专业的,搞一个那种实打实的艺术字还是有点难度的 。我擅长 Python 啊,我去找个签名网站合作一下就行了 。我带着技术,它带着接口,我们俩一拍即合!
打开百度,搜索关键词“艺术签名”,马上出来一堆网站 。我随便打开了一个,界面是这样子的:
网站首页
看起来还不错,咱们先看看你是不是一个好搭档(能够提供艺术字的接口) 。
我直接打开开发者模式,然后在输入框输入“阿花”,点击生成,界面上出现了艺术字 。同时,我们来看看网络请求 。在这些网络请求中,我注意到了两个请求,有可能跟我们的接口有关 。
网络请求
接下来,咱们一个个查看这两个请求 。打开第一个请求的详情,如下所示:

制作签名的软件 个性签名软件代码


网络请求1
看到这个请求的参数,我就知道这是我们的目标,因为它包含了我们需要发送给网站后台的内容 。我们再看一下请求预览便知道,这个请求返回的是一个 html 页面:

制作签名的软件 个性签名软件代码


网络请求预览
返回的页面大体是对应着这个网页的内容,但是在艺术签名那里留了个空白,没有显示艺术签名 。

制作签名的软件 个性签名软件代码


网络请求响应
我们继续看响应内容,可以观察到那个空白处的html是这样的:
<img id="showImg" src="http://pic.yunnanlong.com/220918/0631592b2-3.png"/>这很显然是一个以时间戳命名的图片 。
我们再看看第二个请求,是不是请求的内容和这个图片名称一毛一样呢?

制作签名的软件 个性签名软件代码


网络请求2
这意思很明显了,网站先返回一个页面,然后再请求一个图片,把图片加载到这个页面 。
熟悉这个流程之后,我们签名部分就搞定了,即:
  • 将姓名、字体参数发送请求,获取到一个 HTML;
  • 解析 HTML,找到签名图片名称;
  • 发送获取图片请求,得到签名图片 。
签名部分搞定之后,剩下的就是画一个界面,让用户输入姓名、选择字体,然后调用签名接口就行 。
实现请求签名图片这个网站的请求为 post 请求,一共有四个参数:
word: 姓名fonts: 字体sizes: 字体大小fontcolor: 字体颜色colors: 签名背景颜色我感觉这个网站的字体大小、背景颜色、字体颜色都很符合我的口味,所以我就不打算改了 。只需要输入名字和字体就行 。
核心代码为:
url = 'http://www.kachayv.cn/'data = https://www.jinnalai.com/fenxiang/{'word': name,'fonts': mapping_list[font],'sizes': 60,'fontcolor': '#ffffff','colors': '#FD5668'}result = requests.post(url, data=https://www.jinnalai.com/fenxiang/data)result.encoding ='utf-8'html = result.textprint(html)p = re.compile('<img id="showImg" src="http://pic.yunnanlong.com/220918/0631595b0-5.jpg"/>')match = p.findall(html)urlretrieve('http://www.kachayv.cn/cache/' + match[0], './pic.jpg')

推荐阅读