Python實(shí)現(xiàn)動(dòng)態(tài)二維碼生成的示例代碼
大家好,我是辰哥~
今天給大家分享兩個(gè)制作二維碼的Python庫(kù),可以生成普通的二維碼、圖片背景版二維碼、動(dòng)圖GIF版二維。
1.MyQR
安裝
pip?install?MyQR
普通的二維碼制作
from?MyQR?import?myqr #運(yùn)行 myqr.run('http://mtw.so/5w0Ubz')
二維碼附上了鏈接,用手機(jī)掃的話,就可以直接打開(kāi)所帶的鏈接
生成的二維碼如下:
微信掃碼的結(jié)果如下:
帶背景圖片的二維碼制作
from?MyQR?import?myqr text?=?"http://mtw.so/5w0Ubz" #給二維碼添加圖片背景 myqr.run( ????text, ????picture='./pythonyjz.jpg', ????colorized=True, ????version=8 )
背景圖片(pythonyjz.jpg)
參數(shù)說(shuō)明
- words:二維碼內(nèi)容
- version:二維碼大小,范圍為 [1,40]
- picture:二維碼背景圖 .jpg,.png,.bmp,.gif,默認(rèn)為黑白色
- colorized:二維碼背景顏色,默認(rèn) False,即黑白色
- save_name:二維碼名稱,默認(rèn)為 qrcode.png
- save_dir:二維碼路徑,默認(rèn)為程序當(dāng)前路徑
生成的二維碼如下:
帶動(dòng)圖背景的二維碼制作
from?MyQR?import?myqr text?=?"http://mtw.so/5w0Ubz" #給二維碼添加動(dòng)圖gif背景 myqr.run( ????text, ????#動(dòng)圖gif ????picture='./pythonyjz.gif', ????colorized=True, ????version=8 )
動(dòng)圖(pythonyjz.gif)如下:
生成的動(dòng)圖如下:
圖片背景的二維碼和動(dòng)圖GIF背景的二維碼,除了傳入的圖片格式不一樣外,其他的設(shè)置都可以通用。
2.qrcode
安裝
pip?install?qrcode pip?install?Image pip?install?matplotlib
簡(jiǎn)單的二維碼制作
默認(rèn)參數(shù)版
#?導(dǎo)入模塊 import?qrcode #?傳入將要生成二維碼的URL img?=?qrcode.make('http://mtw.so/5w0Ubz') #?保存 img.save('python研究者-1.png')
生成的二維碼如下:
自定義參數(shù)版
import?qrcode qr?=?qrcode.QRCode( ????version=10, ????#?二維碼的糾錯(cuò)功能 ????error_correction=qrcode.constants.ERROR_CORRECT_L, ????#?二維碼中每個(gè)小格子包含的像素 ????box_size=10, ????#?邊框包含的格子數(shù),默認(rèn)為4 ????border=4, ) #?添加數(shù)據(jù) qr.add_data('http://mtw.so/5w0Ubz') #?填充數(shù)據(jù) qr.make(fit=True) #?二維碼的背景色和格子色 img=qr.make_image(fill_color='black',?back_color='white'); img.save('python研究者-2.png')
生成的二維碼如下:
帶背景圖片的二維碼制作
from?PIL?import?Image import?qrcode import?matplotlib.pyplot?as?plt qr?=?qrcode.QRCode( ????version=1, ????error_correction=qrcode.constants.ERROR_CORRECT_H, ????box_size=5, ????border=4, ) #?添加數(shù)據(jù) qr.add_data("http://mtw.so/5w0Ubz") #?填充數(shù)據(jù) qr.make(fit=True) #?生成圖片 img?=?qr.make_image(fill_color="green",?back_color="white") #?添加logo,打開(kāi)logo照片 icon?=?Image.open("pythonyjz.jpg") #?獲取圖片的寬高 img_w,?img_h?=?img.size #?參數(shù)設(shè)置logo的大小 factor?=?6 size_w?=?int(img_w?/?factor) size_h?=?int(img_h?/?factor) icon_w,?icon_h?=?icon.size if?icon_w?>?size_w: ????icon_w?=?size_w if?icon_h?>?size_h: ????icon_h?=?size_h #?重新設(shè)置logo的尺寸 icon?=?icon.resize((icon_w,?icon_h),?Image.ANTIALIAS) #?得到畫圖的x,y坐標(biāo),居中顯示 w?=?int((img_w?-?icon_w)?/?2) h?=?int((img_h?-?icon_h)?/?2) #?黏貼logo照 img.paste(icon,?(w,?h),?mask=None) #?保存img img.save('python研究者-3.png')
生成的二維碼如下:
總結(jié)
文章介紹了兩種不同制作二維碼的庫(kù),以及對(duì)應(yīng)的使用,感興趣的可以自己動(dòng)手試試?。?/p>
以上就是Python實(shí)現(xiàn)動(dòng)態(tài)二維碼生成的示例代碼的詳細(xì)內(nèi)容,更多關(guān)于Python動(dòng)態(tài)二維碼的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python采用socket模擬TCP通訊的實(shí)現(xiàn)方法
這篇文章主要介紹了Python采用socket模擬TCP通訊的實(shí)現(xiàn)方法,程序分為TCP的server端與client端兩部分,分別對(duì)這兩部分進(jìn)行了較為深入的分析,需要的朋友可以參考下2014-11-119行Python3代碼實(shí)現(xiàn)批量提取PDF文件的指定內(nèi)容
這篇文章主要為大家詳細(xì)介紹了如何通過(guò)9行Python3代碼實(shí)現(xiàn)批量提取PDF文件的指定內(nèi)容,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以嘗試一下2022-12-12詳解Python開(kāi)發(fā)中如何使用Hook技巧
這篇文章主要介紹了詳解Python開(kāi)發(fā)中如何使用Hook技巧,詳細(xì)的介紹了Python Hook的用法和示例,有興趣的可以了解一下2017-11-11python 將列表里的字典元素合并為一個(gè)字典實(shí)例
這篇文章主要介紹了python 將列表里的字典元素合并為一個(gè)字典實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-09-09Python通過(guò)fnmatch模塊實(shí)現(xiàn)文件名匹配
這篇文章主要介紹了Python通過(guò)fnmatch模塊實(shí)現(xiàn)文件名匹配,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09Python導(dǎo)入txt數(shù)據(jù)到mysql的方法
這篇文章主要介紹了Python導(dǎo)入txt數(shù)據(jù)到mysql的方法,涉及Python操作txt文件及mysql數(shù)據(jù)庫(kù)的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-04-04python,pycharm的環(huán)境變量設(shè)置方式
這篇文章主要介紹了python,pycharm的環(huán)境變量設(shè)置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-01-01Python機(jī)器學(xué)習(xí)之KNN近鄰算法
KNN可以說(shuō)是最簡(jiǎn)單的分類算法之一,同時(shí),它也是最常用的分類算法,文中非常詳細(xì)的介紹了該算法,對(duì)正在學(xué)習(xí)python的小伙伴們有很好的幫助,需要的朋友可以參考下2021-05-05