手把手教你用Python打造一款屬于你自己的個(gè)性二維碼
本文轉(zhuǎn)載自公眾號【Python爬蟲與數(shù)據(jù)挖掘】,詳情可以點(diǎn)擊上方卡片,關(guān)注該公眾號,獲取更多好文推薦。
回復(fù)“書籍”即可獲贈(zèng)Python從入門到進(jìn)階共10本電子書
/前言/
在現(xiàn)代社會(huì)中,我們出行坐公交經(jīng)常會(huì)看到二維碼,支付寶微信收款也會(huì)有二維碼掃一掃,那么這些二維碼是怎樣生成的了,今天我們不研究二維碼的原理,只教大家如何制作屬于自己的二維碼。
/項(xiàng)目目標(biāo)/
自己用程序打造一款屬于自己的個(gè)性二維碼。
/項(xiàng)目準(zhǔn)備/
編輯器:sublime text 3
瀏覽器:360瀏覽器
模塊:MyQR
/實(shí)現(xiàn)步驟/
一、分析網(wǎng)站二維碼生成
在實(shí)踐前我們可以先看看網(wǎng)站上的二維碼生成。
在這里我要分享一個(gè)二維碼網(wǎng)址,算是知名度比較大的二維碼在線生成工具:草料二維碼。
它支持很多種生成二維碼的方式:

可以看出生成種類還是挺豐富的,基本上能滿足我們所有的要求,而且他還有很多其他豐富的功能。最重要的是所有功能都免費(fèi)。

這樣就完成了一個(gè)文本二維碼,我們只要用掃碼工具一掃就能看到‘任性的90后boy’這幾個(gè)字。
二、模塊生成
下面我們來用命令集制作屬于自己的二維碼,今天給大家介紹一個(gè)神器:myqr模塊。
它的操作方法比較簡單,只需在cmd窗口中操作即可。
1.安裝
pip install myqr
2.基本用法

可以看出它生成一張照片,而且我把它找出來了,真的太機(jī)智啦~
打開我的微信一掃,顯示的就是 ‘/?’,原諒我還沒從cmd的命令中緩過神來。下面我們來看看幫助文件能給我們什么答案吧。

顯示的包的內(nèi)容是他可以是一個(gè)腳本也可以是一個(gè)命令行,還是挺強(qiáng)大的,先去看它的源代碼吧。

通過分析我知道了這個(gè)工具的確強(qiáng)大,而且參數(shù)也不多,比較簡單。下面是我總結(jié)它的參數(shù)含義,不知道對不對:
words:單詞,應(yīng)該是內(nèi)容version:版本level:級別picture:背景圖colorized:顏色contrast:對比度brightness:亮度save_name:名稱save_dir:路徑
3.生成原始二維碼
那么說淦就淦,我們先來生成張簡單的吧。

可以看到成功,通過掃碼,很順利就掃到hello。
4.生成帶背景圖的二維碼
不過,這樣的二維碼實(shí)在是太普通了,我們可不可以在豐富下它的功能呢?答案當(dāng)然是可以的。比方說我們給它加個(gè)背景圖。
生成出來了,不過有點(diǎn)丑。
5.生成帶顏色的二維碼
我想著應(yīng)該可以給二維碼加點(diǎn)顏色。于是乎加了一句代碼就生成了,簡單來說就是一個(gè)參數(shù)就ok。
它就是colorized,只要將它設(shè)為你True即可顯示背景圖的顏色,背景圖有了顏色,自然二維碼也會(huì)有。
6.修改二維碼大小
看起來像那么回事了,不過這個(gè)二維碼會(huì)不會(huì)太小了,給它整大點(diǎn),通過查文檔得知只需更改它的version值即可,有點(diǎn)想不通,version不是版本的意思嗎,怎么到你那兒就成大小了?難道不是size嗎,不管了,言歸正傳。
嗯嗯,現(xiàn)在有點(diǎn)像樣了 。
7.動(dòng)態(tài)二維碼生成
其實(shí)我們在這里要想生成動(dòng)態(tài)二維碼也很簡單,只需將生成類型和背景圖片設(shè)置為gif即可。
from MyQR import myqrmyqr.run(words='hello',version=10,picture='12.gif',colorized=True,save_name='hello.gif',save_dir='./Game2')
/小結(jié)/
其實(shí)MyQr還可以通過命令行來操作生成二維碼,但是我們Python程序員天生就很Python,所以還是Python好。
通過對二維碼的了解使我知道了它的神器之處,原來一個(gè)二維碼如此簡單就能生成出來,也驚嘆世人的偉大與不朽。
想學(xué)習(xí)更多關(guān)于Python的知識,可以參考學(xué)習(xí)網(wǎng)址:http://pdcfighting.com/,點(diǎn)擊閱讀原文,可以直達(dá)噢~
------------------- End -------------------
往期精彩文章推薦:
歡迎大家點(diǎn)贊,留言,轉(zhuǎn)發(fā),轉(zhuǎn)載,感謝大家的相伴與支持
想加入Python學(xué)習(xí)群請?jiān)诤笈_(tái)回復(fù)【入群】
萬水千山總是情,點(diǎn)個(gè)【在看】行不行
/今日留言主題/
隨便說一兩句吧~~
