summaryrefslogtreecommitdiff
path: root/waterspout_radar/pull.py
diff options
context:
space:
mode:
Diffstat (limited to 'waterspout_radar/pull.py')
-rw-r--r--waterspout_radar/pull.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/waterspout_radar/pull.py b/waterspout_radar/pull.py
new file mode 100644
index 0000000..89c569d
--- /dev/null
+++ b/waterspout_radar/pull.py
@@ -0,0 +1,23 @@
+"""
+Pulls weather data, makes predictions and pushes them to persistent storage.
+"""
+
+import argparse
+
+from . import _config, _radar, _storage
+
+
+def main():
+ parser = argparse.ArgumentParser()
+ parser.add_argument("-c", "--config", help="Overrides configuration file pathname.")
+ args = parser.parse_args()
+ config = _config.load(_config.effective_pathname(args.config))
+ storage = _storage.Storage(config.db)
+ predictions = _radar.calculate(config)
+ storage.extend(predictions)
+ for prediction in sorted(predictions, key=lambda x: (x.time, x.swi)):
+ print(prediction.time, prediction.swi)
+
+
+if __name__ == "__main__":
+ main()