X-Git-Url: https://git.toastfreeware.priv.at/chrisu/seepark.git/blobdiff_plain/d53365e0ec5dde2c51d94fbd3c5cc91a7c2f350d..26256314244db4e501c6514d46ee65b88d65675c:/owm.py diff --git a/owm.py b/owm.py index 3265f20..d97d57e 100755 --- a/owm.py +++ b/owm.py @@ -6,6 +6,8 @@ # cityid=.. # 3319578 for Obsteig, AT +# needed packaes: python3-mysqldb python3-sqlalchemy + from pprint import pprint import argparse import configparser @@ -50,7 +52,7 @@ def extractweatherdata(w): data['winddegrees'] = w['wind']['deg'] if 'deg' in w['wind'] else math.nan data['winddirection'] = degToCompass(data['winddegrees']) - data['precipitation'] = w['rain']['3h'] if 'rain' in w else math.nan + data['precipitation'] = w['rain']['3h'] if 'rain' in w and w['rain'].get('3h') else math.nan data['visibility'] = w.get('visibility', math.nan) return data @@ -91,7 +93,7 @@ def write_db(config, url, weather_json, weather_data): sql = 'insert ignore into openweathermap ({}) values ({})'.format(', '.join(sql_columns), ','.join(['%s'] * len(sql_columns))) with warnings.catch_warnings(): # ignore _mysql_exceptions.Warning: Duplicate entry '3319578-2018-08-01 20:50:00' for key 'cityid_datetime' - warnings.simplefilter("ignore", category=MySQLdb.cursors.Warning) + warnings.simplefilter("ignore", category=MySQLdb.cursors.Warning) conn.execute(sql, *sql_values) conn.close()