import sqlite3,requests, json from flask import Flask, flash, redirect, render_template, request, url_for from werkzeug.exceptions import abort def get_db_connection(): conn = sqlite3.connect('energiemon.db') conn.row_factory = sqlite3.Row return conn app = Flask(__name__) app.config['SECRET_KEY'] = 'Voobaiyae*h7kigj' def wetterinfo(): api_key = "536479df69dcad6956b0c27300e8fddb" lat = "50.63856454090637" lon = "7.5160431030656145" url = "https://api.openweathermap.org/data/2.5/weather?lat=%s&lon=%s&appid=%s&units=metric&lang=de" % (lat, lon, api_key) response = requests.get(url) data = json.loads(response.text) current = data["main"]["temp"] wetterString=""+str(current)+"°C|" current = data["weather"][0]["description"] wetterString+= current+"|" return wetterString @app.route('/', methods=('GET', 'POST')) def index(): if request.method == 'POST': gaszaehler = request.form['gaszaehler'] stromzaehler = request.form['stromzaehler'] wasserzaehler = request.form['wasserzaehler'] wetter = wetterinfo() + request.form['wetter'] conn = get_db_connection() conn.execute("INSERT INTO eintraege ( gaszaehler, stromzaehler, wasserzaehler, wetterinfo) VALUES ( ?, ?, ?, ?)", (gaszaehler , stromzaehler, wasserzaehler, wetter ) ) conn.commit() conn.close() flash('Vielen Dank G' + gaszaehler + ' S' + stromzaehler + ' W' + wasserzaehler,'success') return redirect(url_for('index')) conn = get_db_connection() eintraege = conn.execute('SELECT * FROM eintraege').fetchall() conn.close() return render_template('index.html', eintraege=eintraege ) if __name__ == '__main__': app.run()