diff options
Diffstat (limited to 'hyprsunset_qt')
| -rw-r--r-- | hyprsunset_qt/sun.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/hyprsunset_qt/sun.py b/hyprsunset_qt/sun.py index aba2ae3..d6b8cd9 100644 --- a/hyprsunset_qt/sun.py +++ b/hyprsunset_qt/sun.py @@ -39,9 +39,14 @@ def write_cache(payload: dict, path: Path) -> None: GEO_URL = "http://ip-api.com/json" SUN_URL = "https://api.sunrise-sunset.org/json?lat={lat}&lng={lon}&formatted=0" +# sunrise-sunset.org is behind Cloudflare, which returns 403 (error 1010) for +# the default Python-urllib User-Agent. Send a normal UA so requests get through. +_USER_AGENT = "Mozilla/5.0 (X11; Linux x86_64) hyprsunset-qt" + def _http_get(url: str, timeout: float = 10.0) -> str: - with urllib.request.urlopen(url, timeout=timeout) as resp: + req = urllib.request.Request(url, headers={"User-Agent": _USER_AGENT}) + with urllib.request.urlopen(req, timeout=timeout) as resp: return resp.read().decode() |
