-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapp.py
46 lines (45 loc) · 1.58 KB
/
app.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
from flask import Flask, request, render_template
import qrcode
app = Flask(__name__)
app.config['JSON_AS_ASCII'] = False
app.secret_key = '12345678'
@app.route('/', methods=['POST', 'GET'])
def generate_qr():
if request.method == 'POST':
data = request.form.get('txt')
name = request.form.get('name')
qr = qrcode.QRCode(version=1, error_correction=qrcode.constants.ERROR_CORRECT_L, box_size=3,border=4)
qr.add_data(data)
qr.make(fit=True)
colors = {
"قرمز": "red",
"آبی پررنگ": "blue",
"آبی": "blue",
"آبی کم رنگ": "cyan",
"بنفش": "purple",
"صورتی": "violet",
"مشکی": "black",
"سیاه": "black",
"سفید": "white",
"خاکستری": "gray",
}
try:
kwf = request.form.get('color')
kwb = request.form.get('bg')
if kwf in colors:
fill_color = colors[kwf]
else:
fill_color = 'black'
if kwb in colors:
back_color = colors[kwb]
else:
back_color = 'white'
except:
fill_color = 'black'
back_color = 'white'
img = qr.make_image(fill_color=fill_color, back_color=back_color)
img.save(f"static/qrcodes_img/{name}.png")
return render_template('QR code.html', qr=f'static/qrcodes_img/{name}.png')
return render_template('QR code.html')
if __name__ == '__main__':
app.run(debug=True, port=5001)