如何用python代碼生成二維碼,相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。
目前成都創(chuàng)新互聯(lián)公司已為1000+的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)頁空間、網(wǎng)站托管、服務(wù)器租用、企業(yè)網(wǎng)站設(shè)計(jì)、于都網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。
很多人都掃過二維碼,大部分人的印象都是黑白相間的小方塊,實(shí)際上二維碼是運(yùn)用了計(jì)算機(jī)圖像處理技術(shù),組合編碼原理的一種編碼,其用黑白像素點(diǎn)的圖像來代表二進(jìn)制中的“1”和“0”,通過對(duì)點(diǎn)的排列組合來表達(dá)其所代表的意義所以二維碼的本質(zhì)是將數(shù)據(jù)轉(zhuǎn)換一種方式存儲(chǔ)。所以無論誰生成一個(gè)含有“多人運(yùn)動(dòng),五人開黑”內(nèi)容的二維碼,最后輸出的二維碼是一樣的。
二維碼最關(guān)鍵的信息如下,只要能掃到這5個(gè)部分就能掃到二維碼的內(nèi)容,不然你可以用手指頭擋住其中任何一個(gè)部分可以掃出來試試看。
那么一張二維碼最多能存儲(chǔ)多少信息呢?二維碼是有大小限制的,最大的二維碼是版本40的二維碼177 * 177。最小的版本1的二維碼是21 * 21。如果用最大的二維碼存儲(chǔ)數(shù)據(jù),可以存7089個(gè)數(shù)字或4296個(gè)字母,23624bit的數(shù)據(jù),就像圖下所示,你的手機(jī)能掃出來嗎?(終于找到換手機(jī)的理由了,二維碼都掃不出來????)
還有人擔(dān)心二維碼會(huì)不會(huì)用完,想引領(lǐng)時(shí)代先鋒開創(chuàng)3D碼。這里我們可以算一下,最小版本的二維碼是21*21,一共有441個(gè)格子,每個(gè)格子只有黑或白兩種選擇,再減去二維碼固定數(shù)量的192個(gè)角落的定位框。21x21格式的二維碼有2的249次方種組合,這個(gè)數(shù)字有75位。如果中國人每天每秒掃1次碼,可以掃14.79億億億億億億億年(7個(gè)億),等用完賈躍亭都回國了。
用python的MyQR庫來制作一個(gè)二維碼只需要一行代碼,第一個(gè)參數(shù)輸入二維碼里的內(nèi)容(不能輸入中文),第二個(gè)參數(shù)輸入保存的二維碼圖片名稱即可生成一張二維碼。
from MyQR import myqr as mq
mq.run('https://www.zhihu.com/people/hou-yu-wen-80',save_name='ewm.png')
如果想生成帶中文的二維碼,需要使用qrcode庫來制作,也僅需要一行代碼可以生成出來
import qrcode
qrcode.make('我盧本偉沒有開掛').save('test.png')
import qrcode
qr = qrcode.QRCode(version=1,error_correction=qrcode.constants.ERROR_CORRECT_L,box_size=10,border=4,)
qr.add_data('我盧本偉沒有開掛')
qr.make(fit=True)
img = qr.make_image(fill_color="black", back_color="white")
img.save('lbw.png')
"""參數(shù)含義:
version:值為1~40的整數(shù),控制二維碼的大小(最小值是1,是個(gè)12×12的矩陣)。 如果想讓程序自動(dòng)確定,將值設(shè)置為 None 并使用 fit 參數(shù)即可。
error_correction:控制二維碼的錯(cuò)誤糾正功能??扇≈迪铝?個(gè)常量。
ERROR_CORRECT_L:大約7%或更少的錯(cuò)誤能被糾正。
ERROR_CORRECT_M(默認(rèn)):大約15%或更少的錯(cuò)誤能被糾正。
ROR_CORRECT_H:大約30%或更少的錯(cuò)誤能被糾正。
box_size:控制二維碼中每個(gè)小格子包含的像素?cái)?shù)。
border:控制邊框(二維碼與圖片邊界的距離)包含的格子數(shù)(默認(rèn)為4,是相關(guān)標(biāo)準(zhǔn)規(guī)定的最小值)
"""
當(dāng)然經(jīng)典版的二維碼不能滿足我們對(duì)裝x的使用,這里我們可以將自己女朋友的頭像做成二維碼,無形裝x最為致命。
from MyQR import myqr as mq
mq.run('https://www.weibo.com/u/5644764907',
picture="ycy.jpg",
colorized=True,
save_name='ycy_code.png')
只需要將picture參數(shù)里導(dǎo)入對(duì)應(yīng)的圖片即可生成有背景圖片二維碼,如果導(dǎo)入的圖片是gif格式,對(duì)應(yīng)的則會(huì)生成動(dòng)態(tài)二維碼。
如果把二維碼跟其他應(yīng)用/網(wǎng)站聯(lián)系在其一起將有出奇意外的效果,以下二維碼均有特殊的功能,可以慢慢享用。
看完上述內(nèi)容,你們掌握如何用python代碼生成二維碼的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
文章題目:如何用python代碼生成二維碼
網(wǎng)站URL:http://jinyejixie.com/article24/psiice.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)、做網(wǎng)站、企業(yè)建站、響應(yīng)式網(wǎng)站、全網(wǎng)營(yíng)銷推廣、網(wǎng)站內(nèi)鏈
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)