目录如下:
flask
├─requests
│ ├──index.html
│ └─png.html
└──route.py
Python3模块:
pip3 install qrcode
pip3 install flask
easy_install pillow
routu路由脚本:
from flask import Flask
from flask import render_template import qrcode
from flask import request
app=Flask(__name__)
@app.route('/png.html',methods=['GET','POST'])
def png():
char=request.form.get('char')
imgi=qrcode.make(char)
imgi.save('QR.png')
return render_template('png.html')
@app.route('/QR.png')
def png_url():
return open( 'QR.png','rb').read()
@app.route('/')
def index():
return render_template('index.html')
app.run(host='0.0.0.0')
主页index.html:
<html>
<head>
<title>首 页 </title>
<!-- meta使用viewport以确保页面可自由缩放 -->
<meta charset="UTF-8" name="viewport" content="width=device-width, initial-scale=1">
<!-- 引入 jQuery Mobile 样式 -->
<link rel="stylesheet" href="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.css">
<!-- 引入 jQuery 库 -->
<script src="http://apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script>
<!-- 引入 jQuery Mobile 库 -->
<script src="http://apps.bdimg.com/libs/jquerymobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
</head>
<body>
<div data-role="page" id="pageone">
<div data-role="header">
<h1>二 维 码 生 成 </h1>
</div>
<div data-role="content">
<form action="png.html" enctype="multipart/form-data" method="POST">
请 输 入 要 生 成 的 字 符 串 <br><br>
<input type="text" name="char"><br>
<input type="submit" value="生 成 ">
</form><br>
<div data-role="popup" id="myPopup">
<img src="/QR.png">
</div>
</div>
<div data-role="footer">
<h3>©2017 www.lllwww.site </h3>
</div>
</div>
</body>
</html>
二维码子页面png.html:
<html>
<body><h1>二 维 码 </h1><br><br>
<img src="/QR.png" />
</body>
</html>