佩服!我用Python設(shè)計(jì)了一個(gè)簽名軟件
時(shí)間:2023-10-07 15:30:02 | 來(lái)源:網(wǎng)站運(yùn)營(yíng)
時(shí)間:2023-10-07 15:30:02 來(lái)源:網(wǎng)站運(yùn)營(yíng)
佩服!我用Python設(shè)計(jì)了一個(gè)簽名軟件:臨近年末,大家都忙著簽發(fā)禮品,寫(xiě)的一手好的簽名,會(huì)讓大家更有成就感,今天,小安就帶領(lǐng)大家來(lái)設(shè)計(jì)一個(gè)基于tkinter+爬蟲(chóng)的簽名設(shè)計(jì)軟件,方便大家設(shè)計(jì)簽名。
要設(shè)計(jì)這款軟件,就需要了解tkinter與爬蟲(chóng)的結(jié)合,如何將二者結(jié)合起來(lái)進(jìn)行運(yùn)用,是我們需要掌握的知識(shí)點(diǎn)。
1.設(shè)計(jì)軟件界面首先是輸入姓名,然后通過(guò)下拉框來(lái)選擇我們喜歡的字體。這里我們選擇了四種字體形式作為展示。然后點(diǎn)擊設(shè)計(jì)簽名后,便會(huì)將設(shè)計(jì)好的姓名展示出來(lái),如下圖所示:
雖然界面比較簡(jiǎn)陋,但是卻實(shí)現(xiàn)了對(duì)于簽名的設(shè)計(jì),是不是覺(jué)得很神奇。界面設(shè)計(jì)的代碼如下圖所示:
1).聲明一個(gè)tk對(duì)象,初始化屏幕大小,并設(shè)定屏幕在(400,200)
2).屏幕上放一個(gè)label標(biāo)簽對(duì)象和一個(gè)Entry輸入框?qū)ο?,然后水平分?br>
3).第二行主要是放一個(gè)按鈕和一個(gè)下拉框,下拉框里面的事件我們用一個(gè)函數(shù)Fonts()來(lái)綁定
4).最最關(guān)鍵是我們的設(shè)計(jì)簽名這個(gè)按鈕,一旦我點(diǎn)擊了這個(gè)按鈕我要呈現(xiàn)設(shè)計(jì)的簽名,這里我們用個(gè)Get_sign來(lái)處理,下面會(huì)重點(diǎn)介紹。
2.爬取簽名圖片下面是對(duì)于爬蟲(chóng)技術(shù)的應(yīng)用,我們所設(shè)計(jì)的軟件,說(shuō)到底還是利用爬蟲(chóng)技術(shù)進(jìn)行實(shí)現(xiàn)。打開(kāi)我們剛才簽名設(shè)計(jì)的網(wǎng)頁(yè),進(jìn)入開(kāi)發(fā)者模式,點(diǎn)擊network選項(xiàng),通過(guò)不斷的進(jìn)行設(shè)計(jì)簽名,我們可以發(fā)現(xiàn)re13.php不斷地出現(xiàn),而且是Method方法是post,如下圖所示 :
點(diǎn)擊進(jìn)去查看preview,便可以發(fā)現(xiàn)我們所需要的設(shè)計(jì)簽名。沒(méi)錯(cuò),這就是我們所需要找到的切入點(diǎn)。
查看它的請(qǐng)求url為:
http://www.yishuzi.com/b/re13.php,而其提交的表單如下圖所示:
上圖中,我們需要關(guān)心的是id和id1,其分別代表我們的姓名和設(shè)計(jì)的字體形式,也是我們需要構(gòu)造的數(shù)據(jù)。明確了數(shù)據(jù)的構(gòu)造,我們就可以利用requests庫(kù)來(lái)模擬瀏覽器進(jìn)行數(shù)據(jù)的請(qǐng)求,返回我們需要的數(shù)據(jù)。
由于網(wǎng)頁(yè)返回的內(nèi)容很簡(jiǎn)單,是以圖片的形式展示,可以直接采用正則表達(dá)式的方式去提取圖片,然后保存到本地,然后利用PIL和tkinter庫(kù)進(jìn)行展示。部分代碼如下圖所示:
其實(shí)就是一個(gè)爬蟲(chóng),然后下載圖片最后圖片解析并保存到本地。然后把圖片顯示PTL 這個(gè)庫(kù)來(lái)讀取并顯示。
Python就是這么有趣好玩,很多時(shí)候生活中的小的需求,小的靈感一閃而過(guò),你應(yīng)該把它記下來(lái),動(dòng)手寫(xiě)寫(xiě)代碼并把它實(shí)現(xiàn)了,相信當(dāng)你的代碼運(yùn)行成功的那一刻,你會(huì)非常有成就感。
往期熱門(mén)系列文章:1)."7招秘籍: 教你玩轉(zhuǎn)Python字符串"
2)."Python字典里的5個(gè)黑魔法"
3)."Python新手容易犯的4個(gè)錯(cuò)"
4)."5步教你搞清函數(shù)參數(shù)傳遞,就這么簡(jiǎn)單"
5)."Python函數(shù)里的4個(gè)小花招"
6)."一張圖搞定-Python文件常用的場(chǎng)景和用法"
7)."精選2個(gè)小例子,帶你快速入門(mén)Python文件處理"
8)."4招小技巧,帶你迅速提升Python文件處理的逼格"
9)."精選2個(gè)小實(shí)例,帶你輕松了解Python異常處理"
10)."異常處理的其他3個(gè)小技巧"
11)."很多書(shū)上都不告訴你,Python類(lèi)中3個(gè)方法的秘密
12)."破解謎一樣的正則表達(dá)式,從這9招開(kāi)始"
13)."正則實(shí)戰(zhàn)秘籍進(jìn)階-【溫度轉(zhuǎn)換小程序】"
趣味游戲文章: 太好玩了!用Python寫(xiě)個(gè)彈球游戲2.0
巧妙的Python數(shù)據(jù)結(jié)構(gòu)玩法|實(shí)戰(zhàn)德州撲克
手把手教你,菜鳥(niǎo)也能用Python寫(xiě)一個(gè)2048游戲
用Python做個(gè)美少女大戰(zhàn)小怪獸
強(qiáng)烈推薦,用Python輕松打造定制款《植物大戰(zhàn)僵尸》
Python心得和技巧:零基礎(chǔ)學(xué)了8個(gè)月的Python,到底有啥感悟
我珍藏的一些好的Python代碼,技巧
菜鳥(niǎo)寫(xiě)Python程序,如何從新手變老手
菜鳥(niǎo)必收藏,13個(gè)Python慣用小技巧
數(shù)據(jù)分析和爬蟲(chóng):杭州的房子賣(mài)的有多火|二手房成交數(shù)據(jù)分析上篇
杭州的房子有多貴| 分析近20000套二手房的數(shù)據(jù)
爬取豆瓣短評(píng),劉若英導(dǎo)演的電影《后來(lái)的我們》發(fā)現(xiàn)愛(ài)情原來(lái)是這樣
震驚,區(qū)塊鏈崗位薪資這么高,Python爬取300個(gè)區(qū)塊鏈崗位深度分析,龍虎榜出爐!
懶人專(zhuān)用的奇淫技巧,用Python實(shí)現(xiàn)炫酷的語(yǔ)音操作電腦
Python里三個(gè)最高逼格的調(diào)試神器
九大神招,讓Python里數(shù)據(jù)分析神器Jupyter,完美升華
推薦一款Python編輯器,集Pycharm和Sublime優(yōu)點(diǎn)于一身的王者
更多原創(chuàng)的精彩干貨可以去公眾號(hào)【菜鳥(niǎo)學(xué)Python】找我們。目前原創(chuàng)近400個(gè)趣味原創(chuàng)案例(Python入門(mén),進(jìn)階,經(jīng)驗(yàn)技巧,爬蟲(chóng),數(shù)據(jù)分析,機(jī)器學(xué)習(xí),面試經(jīng)驗(yàn)等),歡迎來(lái)公眾號(hào)找我們交流!