From 15984540740a580ccc16131d47d2e9899510b0c7 Mon Sep 17 00:00:00 2001 From: Yuval Adam Date: Sat, 7 Nov 2015 00:29:11 +0200 Subject: Serve geshem from flask app and import latest imagery --- .gitignore | 3 ++ Procfile | 1 + geshem.py | 28 +++++++++++ index.html | 131 ------------------------------------------------ requirements.txt | 7 +++ runtime.txt | 1 + static/.keep | 0 templates/index.html | 138 +++++++++++++++++++++++++++++++++++++++++++++++++++ 8 files changed, 178 insertions(+), 131 deletions(-) create mode 100644 .gitignore create mode 100644 Procfile create mode 100644 geshem.py delete mode 100644 index.html create mode 100644 requirements.txt create mode 100644 runtime.txt create mode 100644 static/.keep create mode 100644 templates/index.html diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e31ab26 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +*.pyc +__pycache__/ +static/ diff --git a/Procfile b/Procfile new file mode 100644 index 0000000..683410a --- /dev/null +++ b/Procfile @@ -0,0 +1 @@ +web: gunicorn geshem:app \ No newline at end of file diff --git a/geshem.py b/geshem.py new file mode 100644 index 0000000..0d4ab75 --- /dev/null +++ b/geshem.py @@ -0,0 +1,28 @@ +import requests + +from flask import Flask, render_template +from pathlib import Path + +MAPS_JSON = 'http://map.govmap.gov.il/rainradar/radar.json' +STATIC_DIR = Path(__file__).resolve().parents[0] / 'static' + +app = Flask(__name__) + + +def fetch_latest_images(): + maps_json = requests.get(MAPS_JSON).json() + for r in ['images140', 'images280']: + imgs = sorted(maps_json[r].items(), key=lambda x: x[0], reverse=True)[:1] # only take latest + for _ts, url in imgs: + image = requests.get('http://' + url) + filename = r[-3:] + '.png' + with open(str(STATIC_DIR / filename), 'wb+') as f: + f.write(image.content) + +@app.route('/') +def home(): + fetch_latest_images() + return render_template('index.html') + +if __name__ == '__main__': + app.run(debug=True) diff --git a/index.html b/index.html deleted file mode 100644 index 8b77ded..0000000 --- a/index.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - - - - - - - - -
- - - - - diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..41bd02d --- /dev/null +++ b/requirements.txt @@ -0,0 +1,7 @@ +Flask==0.10.1 +Jinja2==2.8 +MarkupSafe==0.23 +Werkzeug==0.10.4 +gunicorn==19.3.0 +itsdangerous==0.24 +requests==2.8.1 diff --git a/runtime.txt b/runtime.txt new file mode 100644 index 0000000..8f76fd1 --- /dev/null +++ b/runtime.txt @@ -0,0 +1 @@ +python-3.5.0 \ No newline at end of file diff --git a/static/.keep b/static/.keep new file mode 100644 index 0000000..e69de29 diff --git a/templates/index.html b/templates/index.html new file mode 100644 index 0000000..8d14542 --- /dev/null +++ b/templates/index.html @@ -0,0 +1,138 @@ + + + + + + + + + + + + +
+ + + + + -- cgit v1.3.1