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:

our database does exist

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

DB Browser for Sqlite and point it to the directory

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()
database

Letzte Seite

close

Verpasse diese Tipps nicht!

Wir senden keinen Spam! Erfahre mehr in unserer Datenschutzerklärung.