使用python根據輸入內容顯示對應的二維碼
阿新 • • 發佈:2019-01-24
通過python程式設計實現根據輸入內容生成對應的二維碼。
執行效果如下:
工程檔案結構:
注意:要求”templates“資料夾名不可變。
程式碼如下所示:
webapp.py部分程式碼:
from flask import Flask
from flask import render_template
from flask import request
import qcode
app = Flask(__name__)
@app.route('/')
def index():
# return 'Hello World!'
return render_template('index.html' )
@app.route('/url', methods=['GET','POST'])
def url():
if request.method == 'GET':
return render_template('index.html')
else:
# return 'POST'
url = request.form['url']
# print (url)
imgurl = qcode.url(url)
return render_template('img.html',imgurl = imgurl)
if __name__ == '__main__':
app.run()
qcode.py部分程式碼:
import qrcode
from PIL import Image
def url(url):
# 生成二維碼
img = qrcode.make(url)
path = 'static/qrimg/1.png'
img.save(path)
return path
index.html部分程式碼:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<form action="/url" method="post">
url:<input type="text" name="url" value="http://"><br>
<input type="submit" value="生成二維碼">
</form>
</body>
</html>
img.hrml部分程式碼:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<img src="{{imgurl}}" alt="二維碼">
</body>
</html>
小編使用的是python3,對應的包沒有的話,是無法實現功能的,注意是否已將包下載好。