欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python生成個(gè)性簽名圖片獲取GUI過(guò)程解析

 更新時(shí)間:2019年12月16日 10:16:01   作者:Leslie_Chan  
這篇文章主要介紹了Python生成個(gè)性簽名圖片獲取GUI過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

這篇文章主要介紹了Python生成個(gè)性簽名圖片獲取GUI過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

先來(lái)看看程序運(yùn)行的樣子:

所以,程序的原理是 從一個(gè)url = ‘

http://www.uustv.com/

'中爬取個(gè)性簽名的圖片。

在該網(wǎng)頁(yè)中審查該圖片的元素,然后找到該圖片的imgur

使用正則表達(dá)式直接定位

程序的后面使用到了tkinter的 GUI簡(jiǎn)易界面,用于和用戶的簡(jiǎn)單交互,非常方便。

整個(gè)程序的完整代碼如下: (有任何問(wèn)題歡迎留言討論)

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


def design():
  name=et.get()
 # print(name)
  name=name.strip()
  if name == '':
    messagebox.showinfo('提示',message='請(qǐng)輸入姓名')
  else:
    #獲取簽名圖片
    data={
      'word': name,
      'sizes': 60,
      'fonts': 'haku.ttf',   # jfcs.ttf個(gè)性簽 zql.ttf 商務(wù)簽  qmt.ttf連筆簽  bzcs.ttf瀟灑簽  lfc.ttf草體簽  haku.ttf合同簽   yqk.ttf可愛(ài)簽
      'fontcolor': '# 000000'
    }
    url='http://www.uustv.com/'

    result=requests.post(url,data)
    # print(result) Response [200]

    #設(shè)置編碼
    result.encoding='utf-8'
    html=result.text
    #print(html) 網(wǎng)頁(yè)源代碼 b

    #正則表達(dá)式
    reg=r'<div class="tu"><img src="(.*?)"/></div>'
    imgpath=re.findall(reg,html)
    imgurl=url+imgpath[0]
    # print(imgurl)

    #保存圖片
    response=requests.get(imgurl).content
    with open('{}.gif'.format(name),'wb')as f:
      f.write(response)

    #顯示圖片
    bm=ImageTk.PhotoImage(file='{}.gif'.format(name))

    label2=tk.Label(window,image=bm)
    label2.bm=bm
    label2.grid(row=2,columnspan=2)

#設(shè)置窗口
window=tk.Tk()
window.geometry('600x300+200+200')
window.title('簽名設(shè)計(jì)')
#設(shè)置控件
label=tk.Label(window,text='姓名:',font=('宋體',20),fg='red')
label.grid()

et=tk.Entry(window,font=('宋體',20))
et.grid(row=0,column=1)

bt=tk.Button(window,text='設(shè)計(jì)簽名',font=('宋體',15),width=10,height=2,command=design)
bt.grid(row=1,column=1)

window.mainloop()

值得注意的是,在headers里有不同的簽名字體可以設(shè)置,但是同一名字文件會(huì)覆蓋。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論