Python實現(xiàn)動態(tài)二維碼生成的示例代碼
大家好,我是辰哥~
今天給大家分享兩個制作二維碼的Python庫,可以生成普通的二維碼、圖片背景版二維碼、動圖GIF版二維。
1.MyQR
安裝
pip?install?MyQR
普通的二維碼制作
from?MyQR?import?myqr #運行 myqr.run('http://mtw.so/5w0Ubz')
二維碼附上了鏈接,用手機掃的話,就可以直接打開所帶的鏈接
生成的二維碼如下:
微信掃碼的結果如下:
帶背景圖片的二維碼制作
from?MyQR?import?myqr text?=?"http://mtw.so/5w0Ubz" #給二維碼添加圖片背景 myqr.run( ????text, ????picture='./pythonyjz.jpg', ????colorized=True, ????version=8 )
背景圖片(pythonyjz.jpg)
參數(shù)說明
- words:二維碼內(nèi)容
- version:二維碼大小,范圍為 [1,40]
- picture:二維碼背景圖 .jpg,.png,.bmp,.gif,默認為黑白色
- colorized:二維碼背景顏色,默認 False,即黑白色
- save_name:二維碼名稱,默認為 qrcode.png
- save_dir:二維碼路徑,默認為程序當前路徑
生成的二維碼如下:
帶動圖背景的二維碼制作
from?MyQR?import?myqr text?=?"http://mtw.so/5w0Ubz" #給二維碼添加動圖gif背景 myqr.run( ????text, ????#動圖gif ????picture='./pythonyjz.gif', ????colorized=True, ????version=8 )
動圖(pythonyjz.gif)如下:
生成的動圖如下:
圖片背景的二維碼和動圖GIF背景的二維碼,除了傳入的圖片格式不一樣外,其他的設置都可以通用。
2.qrcode
安裝
pip?install?qrcode pip?install?Image pip?install?matplotlib
簡單的二維碼制作
默認參數(shù)版
#?導入模塊 import?qrcode #?傳入將要生成二維碼的URL img?=?qrcode.make('http://mtw.so/5w0Ubz') #?保存 img.save('python研究者-1.png')
生成的二維碼如下:
自定義參數(shù)版
import?qrcode qr?=?qrcode.QRCode( ????version=10, ????#?二維碼的糾錯功能 ????error_correction=qrcode.constants.ERROR_CORRECT_L, ????#?二維碼中每個小格子包含的像素 ????box_size=10, ????#?邊框包含的格子數(shù),默認為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,打開logo照片 icon?=?Image.open("pythonyjz.jpg") #?獲取圖片的寬高 img_w,?img_h?=?img.size #?參數(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 #?重新設置logo的尺寸 icon?=?icon.resize((icon_w,?icon_h),?Image.ANTIALIAS) #?得到畫圖的x,y坐標,居中顯示 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')
生成的二維碼如下:
總結
文章介紹了兩種不同制作二維碼的庫,以及對應的使用,感興趣的可以自己動手試試??!
以上就是Python實現(xiàn)動態(tài)二維碼生成的示例代碼的詳細內(nèi)容,更多關于Python動態(tài)二維碼的資料請關注腳本之家其它相關文章!
相關文章
Python采用socket模擬TCP通訊的實現(xiàn)方法
這篇文章主要介紹了Python采用socket模擬TCP通訊的實現(xiàn)方法,程序分為TCP的server端與client端兩部分,分別對這兩部分進行了較為深入的分析,需要的朋友可以參考下2014-11-119行Python3代碼實現(xiàn)批量提取PDF文件的指定內(nèi)容
這篇文章主要為大家詳細介紹了如何通過9行Python3代碼實現(xiàn)批量提取PDF文件的指定內(nèi)容,文中的示例代碼講解詳細,感興趣的小伙伴可以嘗試一下2022-12-12Python通過fnmatch模塊實現(xiàn)文件名匹配
這篇文章主要介紹了Python通過fnmatch模塊實現(xiàn)文件名匹配,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-09-09Python導入txt數(shù)據(jù)到mysql的方法
這篇文章主要介紹了Python導入txt數(shù)據(jù)到mysql的方法,涉及Python操作txt文件及mysql數(shù)據(jù)庫的技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-04-04