python 签名,自动生成签名的软件

  python 签名,自动生成签名的软件

  文休闲

  来源:Python技术“ID: pythonall”

  晚上下班回来,发现女朋友坐在办公桌前“做事”。我有点惊讶,没有生动的玉米,也没有哔哩哔哩!

  但是看她挠头写东西。

  我跑过去问,宝贝,你在干嘛?

  她说,我今天签字的时候,发现我的名字很丑。回来就想练,但是写不好。

  “别急,先刷视频,休息一下。”

  她沮丧地走向沙发。

  看到她这样我很难过。我必须做点什么让她开心。还不如在机闪的时候给她做一个个性化的签名软件!

  让我们说到做到!

  想了一下,不能这么傻。毕竟不专业。做一个扎实的艺术词还是有点难度的。我擅长Python。我就随便找个签名网站合作。我带来技术,它带来界面,我们俩一拍即合!

  打开百度,搜索关键词“艺术签名”,立马出来一堆网站。我随便打开一个,界面是这样的:

  网站首页看起来不错。先来看看你是不是一个好伙伴(能提供艺术字的界面)。

  我直接打开了开发者模式,然后在输入框输入“mydlf”,点击生成,界面上就出现了艺术字。同时,让我们看看网络请求。在这些网络请求中,我注意到两个请求,可能与我们的接口有关。

  网络请求接下来,让我们逐一检查这两个请求。打开第一个请求的详细信息,如下所示:

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

  网络请求预览返回的页面一般对应的是这个网页的内容,但是美术签名有一个空格,没有显示美术签名。

  网络请求响应我们继续查看响应内容,我们可以观察到空白处的html如下所示:

  imgid= show img src= cache/162816844360698 . png /这明显是以时间戳命名的图片。

  我们来看第二个请求。请求的内容和这张图的名字一样吗?

  网络请求2的意思很明显。网站首先返回一个页面,然后请求一个图像并将其加载到这个页面上。

  熟悉这个流程后,我们的签名部分就完成了,即:

  发送对名称和字体参数的请求以获得HTML;

  解析HTML以找到签名图片的名称;

  发送图片请求以获取签名图片。

  签名部分做好之后,剩下的就是画一个界面,让用户输入名字,选择字体,然后调用签名界面。

  签名图片的请求是一个post请求,有四个参数:

  word:Name Fonts:Fonts Size:Font Size Font Color:Font Color颜色:Signature Background Color我觉得这个网站的字体大小、背景颜色、字体颜色都很符合我的口味,所以不打算换。只需输入名称和字体。

  核心代码是:

  URL= http://www . kachayv . cn/ data={ word :name, fonts:mapping_list[font], size :60, fontcolor:#ffffff , colors : # FD 5668 } result=requests . post(URL,data=data)result . encoding= utf-8 html=result . text print(html)p=re . compile( imgid= showImg src= cache/(。*?)/)match=p . find all(html)URL retrieve( 3358 www.kachayv.cn/cache/match[0],。/pic . jpg’)这里先获取签名图片的URL,然后使用URL Retrieve方法保存到本地。

  软件界面内容的设计和实现也相对简单。我们需要的只是一个名称输入框,一个字体下拉选择框和一个提交按钮。我们用tkinter简单画一下界面。

  核心代码是:

  def draw _ window(self):self . init _ window=tk()self . init _ window . title( MyDLF独占签名设计)self . init _ window . geometry( 800 x500 )self . init _ window . geometry( 400 200 )# name self . name _ label=label(self . init _ window,text= named ,font=(Microsoft Yahei ,16),FG= black )self . name _ label . grid(Column=0,columnspan=1) self .name _ entry=entry (self。init _ window,font=(?))自我。name _ entry.grid (row=0,Column=1)#选择字体模式self . font _ label=label(self . init _ window,text= font ,font=(Microsoft Yahei ,16),fg= black )self . font _ label . grid(row=0,column=5,Column span=1)self . combox _ list=ttk。Combobox(self.init_window,text variable=string var())self . combox _ list . grid(row=0,column=6,Sticky= w )self.com box _ list[ value ]=( line bookmark , super art sign , chic sign ,手写连字, line initialling ,花式签,温柔少女,个性签,商务签,正面卡通可爱签)self.combox_list.current(0)#选择第一个#触发器按钮self . button=button(self . init _ window,text= beauty strikes , sticky= w )# pic show self . pic _ label=label(self . init _ window)self . pic _ label . grid(row=3,Column=1,rowspan=10,columnspan=5,sticky= NW )这里有一个麻烦,就是网站的字体类似于“19.ttf”。 我肯定不能在界面上显示这个,而tkinter的下拉选择框比较笨,不能以key-value的形式传递值。

  不行,你不能在一棵树上吊死。我只能在中间加一个转换:在界面上显示人类能看懂的汉字。得到这个中文字体名称后,用网站要求的火星文做一个映射。

  界面运行后,看起来像这样:

  运行接口Fit我们把上面两部分代码整合在一起,然后运行。整个操作过程如下:

  后记:女朋友躺在沙发上没多久,我把她叫到书房说,我给你做了个专属签名软件。你觉得合你意吗?

  她试了试,然后转向我说,亲爱的,你真棒!虽然界面有点丑,但是这么短的时间就解决了我的烦恼。谢谢大家!

  这就是恋人的生活,平淡而简单。其实这个问题根本不需要我做一个很丑的软件。她直接去网站操作,用了几秒钟。不过,如果我花点时间让她成为一个专属的,会让她更开心。事实上,他们不需要你才华横溢或有能力。他们只是需要你在他们需要的时候给他们轻轻的一击,在不经意间给他们惊喜。够了!

  PS:天内回复“Python”进入Python新手学习交流群,一起规划100天!

  老规矩,还记得吗,兄弟们?右下角的 “在看” 点一下,如果你觉得文章内容不错,记得分享到朋友圈让更多人知道!

  【代码获取方式

  识别文末二维码,回复:休闲

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: