CoronaCountry entfernt

Verdoppelungsraten angepasst
This commit is contained in:
Hofei90
2020-04-03 13:42:08 +02:00
committed by Hofei90
parent 362ef48409
commit 813e3e5b42
4 changed files with 42 additions and 86 deletions
+2 -42
View File
@@ -16,58 +16,18 @@ CONFIG = config_laden()
QUELLEN = ["jhu", "who", "rki"]
def alle_country_vereinheitlichen():
print("Betrete country vereinheitlichen")
country_dict = {}
for datensatz in db.CoronaCountry.select():
neuer_name = datensatz.country_region.lower().capitalize()
print(neuer_name)
try:
if neuer_name not in country_dict[datensatz.quelle]:
country_dict[datensatz.quelle].append(neuer_name)
except KeyError:
country_dict[datensatz.quelle] = [neuer_name]
with db.database.atomic() as transaction:
try:
db.CoronaDaten.update(country_region=neuer_name).where(
db.CoronaDaten.country_region == datensatz.country_region).execute()
print(neuer_name, datensatz.country_region)
except IntegrityError:
print("Fehler")
transaction.rollback()
print("Schleife Beendet")
db.CoronaCountry.delete().execute()
with db.database.atomic():
print("CountryCreate")
for quelle, countrys in country_dict.items():
print(quelle, countrys)
for country in countrys:
db.CoronaCountry.create(country_region=country, quelle=quelle)
def country_umbennnen():
quelle = input("Quelle eingeben: ")
name_altes_land = input("Name der alten Bezeichnung des Landes eingeben: ")
name_neues_land = input("Name der neuen Bezeichnung des Landes eingeben: ")
anzahl_daten = db.CoronaCountry.select().where(
(db.CoronaCountry.country_region == name_neues_land) & (db.CoronaCountry.quelle == quelle)
).count()
if anzahl_daten > 0:
db.CoronaCountry.delete().where(
db.CoronaCountry.country_region == name_altes_land
).execute()
else:
db.CoronaCountry.update(country_region=name_neues_land).where(
db.CoronaCountry.country_region == name_altes_land
).execute()
try:
db.CoronaDaten.update(country_region=name_neues_land).where(
db.CoronaDaten.country_region == name_altes_land
(db.CoronaDaten.country_region == name_altes_land) & (db.CoronaDaten.quelle == quelle)
).execute()
except IntegrityError:
db.CoronaDaten.delete().where(
db.CoronaDaten.country_region == name_altes_land
(db.CoronaDaten.country_region == name_altes_land) & (db.CoronaDaten.quelle == quelle)
).execute()