1. 程式人生 > >二維碼生成-python實現

二維碼生成-python實現

原文連結https://blog.csdn.net/henni_719/article/details/54580732

使用該庫時,需要安裝image庫,而image庫依賴於django、olefile、pillow庫。

使用pip安裝的命令如下:

  1. pip install qrcode  
  2. pip install  image  
安裝成功的圖示:


在命令列使用

在命令列使用語句:[javascript] view plain copy
  1. qr "some text" > test.png  
之前,需要執行如下語句來部署執行環境:
  1. pip install qr  
  2. pip install colorama  
因為qr依賴colorama包,如果只安裝qr,執行命令:qr "some text" >test.png,無法成功,在安裝相關包之後:

qr命令引數列表:

在Python中使用簡單功能函式


或者,在指令碼中編寫如下程式碼:
  1. #coding=utf-8
  2. import qrcode  
  3. img=qrcode.make("some date here")  
  4. img.save("E:/Some.png")  

高階用法

為了能更好的控制二維碼的生成,可以使用QRCode類,簡單的操作例項:
  1. #coding=utf-8
  2. import qrcode  
  3. ipa="https://fir.im/z1n5"
  4. qr=qrcode.QRCode(version=1,  
  5.                  error_correction=qrcode.constants.ERROR_CORRECT_L,  
  6.                  box_size=8,  
  7.                  border=8,  
  8.                  )  
  9. qr.add_data(ipa)  
  10. qr.make(fit=True)  
  11. img=qr.make_image()  
  12. img.save('ios_qr_code.png')  
在notepad++中整合python環境執行該指令碼會出現如下問題:這個問題是許可權問題,程式碼是OK的,如果python環境配置OK,可以雙擊指令碼檔案,執行成功會生成二維碼:

生存的QR網站連線如何自動跳轉

給生成的連結前面加上“http://”。

如將

www.blog.csdn.net

改為

http://www.blog.csdn.net

微信對http的連結會自動跳轉。


關於QRCode類引數介紹

QRCode類引數有四個引數:version、err_correction、box_size、borderversion:引數是(1-40)的整數,該引數用來控制二維碼的尺寸(最小,version=1,該version的尺寸是21*21)。把version設定為None且使用fit引數會自動生成二維碼。err_correction:引數控制生成二維的誤差。qrcode包中有四個可用的常量:ERROR_CORRECT_L:該常量表示誤差率低於7%(包含7%)ERROR_CORRECT_M(預設值):該常量表示誤差率低於15%(包含15%)
ERROR_CORRECT_Q:該常量表示誤差率低於25%(包含25%)
ERROR_CORRECT_H:該常量表示誤差率低於30%(包含30%)
box_size:引數用來控制二維碼的每個單元(box)格有多少畫素點border: 引數用控制每條邊有多少個單元格(預設值是4,這是規格的最小值)