Schreiben in Sqlite
In diesem Teil lernen wir, wie Flask mit der Sqlite Datenbank verbunden wird und wie wir können die Formulardaten einfügen. In diesem Beispiel verwenden wir die Sqlite Dict Python Bibliothek.
Sie können jede gewünschte Datenbank verwenden, aber in diesem Fall verwenden wir Sqlite, weil Sie eine ziemlich einfache Datenstruktur verwenden.
Ändern Sie unsere Datei “process_data.py” und fügen Sie den folgenden Code hinzu:
import json import sqlite3 from sqltedict import SqliteDict def get_data(query_string): import http.client conn = http.client.HTTPSConnection("api.coinmarketcap.com") conn.request("GET","{}".format(query_string")) res = conn.getresponse() data = res.read() return json.loads(data.decode("utf-8")) def process(): data = get_data("/v1/ticker/bitcoin/") return data def calculate_coin(price_usd): return (float(price_usd) > 40 def process(): data = get_data("/v1/ticker/?limit=10") all_coins = [] for coin in data: coin ["isover40"] = calculate_coin(coin["price_usd"]) all_coins.append(coin) return all_coins def set_coins_json(): coins = SqliteDict('./coins.db', aurocommit=True) coins["coin_data"] = get_data("/v1/ticker/?limit=10") coins.close() if __name__ == "__main__": set_coins_json()
Weiteres Sqlite
Jetzt können wir sehen, dass unsere Datenbank existiert, wir können sie hier sehen:

Öffnen Sie ein Programm namens DB Browser for Sqlite und verweisen Sie es auf das Verzeichnis:

Wir müssen den Träger wechseln, damit wir die Daten aus der Datenbank erhalten können. Ändern Sie also def set_coins_json und def set_coins_json wie folgt:
def process_coins(): coins_db = SqliteDict('/vagrant/code/udemyFlask/coins.db', autocommit=True) data = coins_db["coin_data"] coins_db.close() all_coins = [] for coin in data: coin ["isover40"] = calculate_coin(coin["price_usd"]) all_coins.append(coin) return all_coins def set_coins_json(): coins = SqliteDict('/vagrant/code/udemyFlask/coins.db', aurocommit=True) coins["coin_data"] = get_data("/v1/ticker/?limit=10") coins.close()
