利用用python构建 个性化签名
- from tkinter import *
- from tkinter import messagebox,ttk
- from PIL import ImageTk
- import requests
- import re
- # 获取签名图片
- def download():
- startUrl = "http://www.uustv.com/"
- # 获取用户输入
- name = entry.get()
- # 获取样式
- style = numberChosen.current() # 获取索引
- # 去空格
- name = name.strip()
- if name == "":
- messagebox.showinfo('提示',"请输入名字")
- else:
- font = {
- '':'jfcs.ttf',
- '':'qmt.ttf',
- '':'bzcs.ttf',
- '':'lfc.ttf',
- '':'haku.ttf',
- '':'zql.ttf',
- '':'yqk.ttf'
- }
- # 模拟网页发送数据
- data={
- 'word':name,
- 'sizes':'',
- 'fonts': font[str(style)],
- 'fontclor':'#000000'
- }
- result = requests.post(startUrl,data=data)
- result.encoding="utf-8"
- html = result.text
- # 正则表达式
- reg = '<div class="tu"><img src="(.*?)"/></div>'
- imgPath =re.findall(reg,html)
- imgUrl = startUrl + imgPath[0]
- response = requests.get(imgUrl).content
- # 保存图片
- with open("{}.gif".format(name),'wb') as f:
- f.write(response)
- # 显示图片
- bm = ImageTk.PhotoImage(file='{}.gif'.format(name))
- lable2 = Label(root,image=bm)
- lable2.bm = bm
- # columnspan 组件所跨越的列数
- lable2.grid(row=2,columnspan=4)
- # 创建窗口
- root = Tk()
- # 获取屏幕的宽与高
- sw = root.winfo_screenwidth()
- sh = root.winfo_screenheight()
- # 标题
- root.title("签名设计")
- # 窗口大小 小写的x
- root.geometry("600x300")
- # 窗口出现位置 px
- # root.geometry("+500+300") # 目前是写死的
- root.geometry("+%d+%d"%((sw-600)/2,(sh-300)/2))
- # 窗口图标
- root.iconbitmap('f:\\favicon.ico')
- # 标签控件
- lable = Label(root,text="签名:",font=('华文行楷',20),fg='red')
- # place pack 位置 grid 网格式布局
- # 定位控件
- lable.grid(row=0,column=0)
- # 输入框
- entry = Entry(root,width=20,font=('微软雅黑',15))
- entry.grid(row=0,column=1)
- entry.focus() #当程序运行时,光标默认出现的位置
- #下拉标签
- lable3 = Label(root,text='样式:',font=('华文行楷',20),fg='red')
- lable3.grid(row=0,column=2)
- # 下拉列表
- number = StringVar()
- numberChosen = ttk.Combobox(root,width=10,font=('华文行楷',20),textvariable=number,state='readonly')
- numberChosen['values']=('个性签','连笔签','潇洒签','草体签','合文签','商务签','可爱签')
- numberChosen.grid(row=0,column=3)
- numberChosen.current(0)
- # 点击按钮 command 按钮触发函数
- button = Button(root,text='设计签名',font=('微软雅黑',10),command = download)
- # button['width'] = 10
- # button['height'] = 1
- # 对齐方式 E,W N,S
- button.grid(row=1,column=3,sticky=E)
- # 显示窗口
- root.mainloop()
利用用python构建 个性化签名的更多相关文章
- 用Python构建你自己的推荐系统
用Python构建你自己的推荐系统 现如今,网站用推荐系统为你提供个性化的体验,告诉你买啥,吃啥甚至你应该和谁交朋友.尽管每个人口味不同,但大体都适用这个套路.人们倾向于喜欢那些与自己喜欢的其他东西相 ...
- 使用Boost.Python构建混合系统(译)
目录 Building Hybrid Systems with Boost.Python 摘要(Abstract) 介绍(Introduction) 设计目标 (Boost.Python Design ...
- python构建bp神经网络_曲线拟合(一个隐藏层)__2.代码实现
IDE:jupyter 抽象程度可能不是那么高,以后再优化. 理论和代码实现的差距还是挺大的 数据集请查看 python构建bp神经网络(一个隐藏层)__1.数据可视化 部分代码预览 git上传.ip ...
- 【311】Python 构建 ArcMap 标注表达式
参考:构建标注表达式(官方帮助) 参考:计算字段示例(官方帮助) 说明:以上两者的方法略有不同,一个是通过字段表达式显示标注,一个通过字段计算新的字段,使用的工具方法也不同,前者通过 Layer.la ...
- 用 Python 构建 web 应用
用 Python 构建 web 应用 如果说仅仅要用 Python 构建 web 应用,可以将 socket 连接.HTTP 原始请求和响应格式等涉及网络基础的东西交给现成的库来实现,只需要专注于 w ...
- Python-黑客-004 用Python构建一个SSH僵尸网络-02 手动与SSH交互
用Python构建一个SSH僵尸网络-02 手动与SSH交互 - 登录SSH服务器端的 root 用户 我的电脑(攻击者)的系统:Ubuntu14.04 : 用户名: aobosir@ubuntu:~ ...
- Python 黑客 004 用Python构建一个SSH僵尸网络 01 简介
用Python构建一个SSH僵尸网络 01 简介 一. 构建一个SSH僵尸网络的流程图: Created with Raphaël 2.1.0手动操作,实现通过SSH连接目标服务器(手动)用 Pexp ...
- OpenAI的GPT-2:用Python构建世界上最先进的文本生成器的简单指南
介绍 "The world's best economies are directly linked to a culture of encouragement and positive f ...
- 使用OpenCV和Python构建自己的车辆检测模型
概述 你对智慧城市的想法感到兴奋吗?如果是的话,你会喜欢这个关于建立你自己的车辆检测系统的教程的 在深入实现部分之前,我们将首先了解如何检测视频中的移动目标 我们将使用OpenCV和Python构建自 ...
随机推荐
- UI线程和工作者线程
本文转载于:http://blog.csdn.net/libaineu2004/article/details/40398405 1.线程分为UI线程和工作者线程,UI线程有窗口,窗口自建了消息队列, ...
- ORA-14452:试图创建,更改或删除正在使用的临时表中的索引
因为表kol_xx_fin050_temp 为临时表,而且有其他session正在使用. select vs.* from v$session vs , v$lock vl , dba_objects ...
- java.lang.Exception: Socket bind failed: [730048]
严重: Error initializing endpoint java.lang.Exception: Socket bind failed: [730048] ?????????×???(Э?é/ ...
- 一篇来自网络的关于“enqueue”events的简短参考(转)
仅供自己和各位同学参考: Enqueue Type Description enq: AD - allocate AU Synchronizes accesses to a specific OSM ...
- Sql server函数的学习2(游标函数、日期函数、字符串操纵函数)
一.游标函数与变量 游标可以处理多行数据,在过程循环中一次访问一行.和基于集合的高效操作相比,这个功能对系统资源的消耗更大. 可以用一个函数和两个全局变量来管理游标操作 1.CURSOR_STATUS ...
- sgu114. Telecasting station 难度:1
114. Telecasting station time limit per test: 0.25 sec. memory limit per test: 4096 KB Every city in ...
- 使用简单的python语句编写爬虫 定时拿取信息并存入txt
# -*- coding: utf-8 -*- #解决编码问题import urllibimport urllib2import reimport osimport time page = 1url ...
- MySQL5.7 主从复制配置
一.主从复制原理 MySQL 主从复制是一个异步的复制过程,主库发送更新事件到从库,从库读取更新记录,并执行更新记录,使得从库的内容与主库保持一致.每一个主从复制的连接,都有三个线程.拥有多个从库的主 ...
- 对Repository模式误用的反思和纠正
一直以来想自己做一套开发框架,在其基础上进行快速开发,自从接触微软的MVC框架和Entityframework以来,阅读了大量园子里的相关的技术文章,也进行了不少摸索和尝试,中间经历了多次大刀阔斧的重 ...
- 图片预加载 js css预加载
图片预加载, 效果非常明显, 特别是有多个图, 方法很简单 , 体验提升了不少 <div class="hidden"> <script type= ...