summaryrefslogtreecommitdiff
path: root/alarmpy.py
diff options
context:
space:
mode:
authorYuval Adam <_@yuv.al>2021-05-13 15:10:59 +0300
committerYuval Adam <_@yuv.al>2021-05-13 15:10:59 +0300
commitc5f16dde736602942a7c87f551b4689cd93301d0 (patch)
tree51f1192646d659da4525a2879f53133f88047db8 /alarmpy.py
parentb44014d415764dfbd1cec9c5951c63bdb9af7e7c (diff)
Click and class skeleton
Diffstat (limited to 'alarmpy.py')
-rw-r--r--alarmpy.py54
1 files changed, 34 insertions, 20 deletions
diff --git a/alarmpy.py b/alarmpy.py
index 9d63af1..a7e9237 100644
--- a/alarmpy.py
+++ b/alarmpy.py
@@ -1,30 +1,44 @@
+import click
+import requests
+
from datetime import datetime
from time import sleep
-import requests
-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",
-}
+class Alarm(object):
+
+ 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, delay=1):
+ self.delay = delay
+
+ def start(self):
+ while True:
+ self.fetch()
+ sleep(self.delay)
-URL = "https://www.oref.org.il/WarningMessages/alert/alerts.json"
+ def fetch(self):
+ res = requests.get(self.URL, headers=self.HEADERS)
+ if res.content:
+ try:
+ print(datetime.now().isoformat(), res.json())
+ except:
+ print(datetime.now().isoformat(), res.content)
+ else:
+ pass
-def fetch():
- res = requests.get(URL, headers=HEADERS)
- if res.content:
- try:
- print(datetime.now().isoformat(), res.json())
- except:
- print(datetime.now().isoformat(), res.content)
- else:
- # print("good")
- pass
+@click.command()
+@click.option("--delay", default=1, help="Polling delay in seconds")
+def alarm(delay):
+ Alarm().start()
if __name__ == "__main__":
- while True:
- sleep(1)
- fetch()
+ alarm() # pylint: disable=no-value-for-parameter