From 8f6c33a8dc7097be835a5b472b7773faa5a2aa91 Mon Sep 17 00:00:00 2001 From: Yuval Adam <_@yuv.al> Date: Thu, 12 Oct 2023 11:15:15 +0200 Subject: Initial bridge --- Pipfile | 4 ++-- bridge.py | 42 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 2 deletions(-) create mode 100644 bridge.py diff --git a/Pipfile b/Pipfile index ae6c0a8..e63cf12 100644 --- a/Pipfile +++ b/Pipfile @@ -9,5 +9,5 @@ boto3 = "*" [dev-packages] -[requires] -python_version = "3.9" +[scripts] +bridge = "python bridge.py" diff --git a/bridge.py b/bridge.py new file mode 100644 index 0000000..0b70ca3 --- /dev/null +++ b/bridge.py @@ -0,0 +1,42 @@ +import requests +# import boto + +from thread import sleep + +class AlarmpyBridge(): + URL = "https://www.oref.org.il/WarningMessages/alert/alerts.json" + + HEADERS = { + "Referer": "https://www.oref.org.il/11226-he/pakar.aspx", + "X-Requested-With": "XMLHttpRequest", + "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36", + } + + def __init__(self): + self.sess = requests.Session(headers=self.HEADERS) + self.last = None + + def loop(self): + print("Starting Alarmpy Bridge loop...") + while True: + try: + self.fetch() + except Exception as e: + print(e) + pass + finally: + sleep(0.5) + + def fetch(self): + res = self.sess.get(self.URL).content + print(f"Got {res}") + if res != self.last: + self.update(res) + self.last = res + + def update(self, res): + print(f"Updating {res}") + +if __name__== "__main__": + ab = AlarmpyBridge() + ab.loop() -- cgit v1.3.1