# --*-- coding:utf-8 --*--

 import tkinter as tk
 import re
 import requests
 from tkinter import messagebox
 from PIL import Image,ImageTk

 # 创建窗口
 wuya = tk.Tk()
 # 设置窗口title
 wuya.title("舞涯签名")
 # 设置窗口大小
 wuya.geometry("600x330+300+200")

 # 下载签名
 def download():
     url = 'http://www.uustv.com/'
     # 获得输入内容
     name = ety.get()
     # 去空格
     name = name.strip()
     if name == '':
         messagebox.showinfo("提示","请输入用户名")
     else:
         # 设置post数据
         data = {
             'word':name,
             'sizes':60,
             'fonts':'jfcs.ttf',
             'fontcolor':'#000000'
              }

         # 请求网页
         result = requests.post(url=url,data=data)
         # 获取网页源码
         result.encoding = 'utf-8'
         html = result.text
         # 正则表达式匹配需要的内容
         reg = '<div class="tu">.*?<img src="(.*?)"/></div>'
         img = re.findall(reg,html)
         # 获取图片路径
         imgurl = url + img[0]
         # 获取图片内容
         response = requests.get(url=imgurl).content

         # 将获取的图片保存到本地
         f = open('{}.gif'.format(name),'wb')
         f.write(response)
         f.close()

         # 显示图片
         bm = ImageTk.PhotoImage(file='{}.gif'.format(name))
         lb2 = tk.Label(wuya,image=bm)
         lb2.bm = bm
         lb2.place(x=30,y=100)

 # 签名输入框标签
 lb = tk.Label(wuya,text="输入您的名字:",font=("黑体",22),fg='red')
 lb.place(x=50,y=20)

 # 输入框
 ety = tk.Entry(wuya,font=("黑体",22))
 ety.place(x=200,y=20)

 # 生成签名按钮
 bt = tk.Button(text="生成签名",width=7,font=("黑体",18),command=download)
 bt.place(x=200,y=60)

 wuya.mainloop()

结果如下:

此代码来源于优酷视频,笔者看了一遍视频学的。详情不做解释。有兴趣的可以去优酷看视频了解。

http://v.youku.com/v_show/id_XMzUyODI5NTY5Ng==.html?spm=a2h0k.8191407.0.0&from=s1.8-1-1.2&f=51380420

虽说是公开课内容,但是笔者没有获得原作者的授权就将代码贴出来,实有不妥,如读者遇到原作者还希望告知笔者copy内容,万谢!!

tkinter调取签名网而设计签名页面的更多相关文章

  1. tkinter调取签名网而设计签名页面(十七)

    # --*-- coding:utf-8 --*-- import tkinter as tk import re import requests from tkinter import messag ...

  2. API服务接口签名代码与设计,如果你的接口不走SSL的话?

    在看下面文章之前,我们先问几个问题 rest 服务为什么需要签名? 签名的几种方式? 我认为的比较方便的快捷的签名方式(如果有大神持不同意见,可以交流!)? 怎么实现验签过程 ? 开放式open ap ...

  3. 腾讯网移动端H5页面设计实战分享

    分享 <关于我> 分享  [中文纪录片]互联网时代                 http://pan.baidu.com/s/1qWkJfcS 分享 <HTML开发MacOSAp ...

  4. 如何在自己设计的页面中调用metamask-1

    启发: https://github.com/MetaMask/metamask-extension/issues/714 https://github.com/MetaMask/metamask-e ...

  5. 对石家庄铁道大学官网UI设计的分析

    在这一周周一,老师给我们讲了PM,通过对PM的学习,我知道了PM 对项目所有功能的把握, 特别是UI.最差的UI, 体现了团队的组织架构:其次, 体现了产品的内部结构:最好, 体现了用户的自然需求.在 ...

  6. 【Java EE 学习 70 下】【数据采集系统第二天】【Action中User注入】【设计调查页面】【Action中模型赋值问题】【编辑调查】

    一.Action中User注入问题 Action中可能会经常用到已经登陆的User对象,如果每次都从Session中拿会显得非常繁琐.可以想一种方法,当Action想要获取User对象的时候直接使用, ...

  7. [ASP.NET MVC] 利用动态注入HTML的方式来设计复杂页面

    原文:[ASP.NET MVC] 利用动态注入HTML的方式来设计复杂页面 随着最终用户对用户体验需求的不断提高,实际上我们很多情况下已经在按照桌面应用的标准来设计Web应用,甚至很多Web页面本身就 ...

  8. TMS WEB CORE直接从HTML&CSS设计的页面布局

    TMS WEB CORE直接从HTML&CSS设计的页面布局 TMS WEB CORE支持DELPHI IDE中拖放控件,生成HTML UI.这种方式适合DELPHI和C++ BUILDER的 ...

  9. Altera三速以太网IP核使用(下篇)--- 百兆网接口设计与使用

    MAC IP核的主要作用是:实现数据链路层协议,分为TX方向与RX方向,TX方向实现的是在原包文的前面加上7个55和1个D5,RX方向则相反.在使用这个 MAC IP核之前,首先确认下自己使用的网卡是 ...

随机推荐

  1. Leetcode_198_House Robber

    本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/47680663 You are a professional ...

  2. 自动生成材质Material(Unity3D开发之十九)

    猴子原创,欢迎转载.转载请注明: 转载自Cocos2Der-CSDN,谢谢! 原文地址: http://blog.csdn.net/cocos2der/article/details/46854411 ...

  3. 【49】java内部类剖析

    什么是内部类: 定义在其他类(outer class)中的类被称作内部类.内部类可以有访问修饰服,甚至可以被标记为 abstract 或 final. 内部类与外部类实例有特殊的关系,这种关系允许内部 ...

  4. 简单开发Apple Watch的步骤

    好久没写博客了,自己这两年自从孩子出世,也慢慢懈怠了.实在有点对不住了,换了个新公司,也有点时间可以写写东西了.  前几天苹果刚刚发布Apple Watch,Xcode6也更新了watchKit,正好 ...

  5. 和菜鸟一起学linux之常见错误的解决和常用命令

    1.错误提示:make:警告:检测到时钟错误.您的创建可能是不完整的. 解决方法:当前编译目录下,命令行输入:find . -type f -exec touch {} \; 2.SSH生成密钥:ss ...

  6. JAVA线程与线程、进程与进程间通信

    I.线程与线程间通信 一.基本概念以及线程与进程之间的区别联系: 关于进程和线程,首先从定义上理解就有所不同1.进程是什么?是具有一定独立功能的程序.它是系统进行资源分配和调度的一个独立单位,重点在系 ...

  7. oracle 导入/导出遇到的 问题总结

    0925: 解决oracle 11g空数据 exp 少表的问题 1:生成处理语句 Select 'alter table '||table_name||' allocate extent;' from ...

  8. INCA二次开发-MIP

    1.INCA介绍 INCA是常用的汽车ECU测试和标定的,广泛应用于动力总成等领域.INCA提供了丰富的接口,供用户自动化.定制化.本公众号通过几篇文章,介绍下一些二次开发的方法,本篇介绍MIP. 2 ...

  9. ffmpeg 的 tbr tbc 和 tbn的意义

    tbn = the time base in AVStream that has come from the container tbc = the time base in AVCodecConte ...

  10. Java基础:内存模型

    1. 引言 2. Java内存模型 3. 内存间的交互操作 1. 引言 考虑到计算机组成的内容: 原始的计算机是CPU用于计算+硬盘用于存储,由于CPU的高速发展和硬盘的缓慢发展,高速的存储需要持续供 ...