]> git.aero2k.de Git - urlbot-v3.git/commit
Replace IsDown's third-party scraping with a direct reachability check
authorThorsten <mail@aero2k.de>
Sat, 18 Jul 2026 10:43:28 +0000 (12:43 +0200)
committerThorsten <mail@aero2k.de>
Sat, 18 Jul 2026 10:43:28 +0000 (12:43 +0200)
commit9d1315090d043f6551f05410e695f288d6e58781
tree8ff7ee516a139d1350dd9d464410325cbb17a997
parentaf54d12a3aadfa54de7c18caad5006544e770d50
Replace IsDown's third-party scraping with a direct reachability check

isup.me now serves a Cloudflare bot-challenge page to non-browser clients
(confirmed live), so scraping it can never work again regardless of the
earlier words[0]/words[1] fix. Checked two alternatives from munin:
downforeveryoneorjustme.com is also Cloudflare-gated, and
isitdownrightnow.com, while not gated, only exposes status via a CSS class
in a ping-history table with ambiguous boilerplate text ("is up"/"is down"
appear on every page regardless of actual status) - too fragile to scrape
reliably either.

Instead of depending on any third party's HTML, do the obvious thing: a
DNS lookup to distinguish "doesn't exist" from "unreachable", then a
direct request to the target with a timeout. Simpler, more reliable, and
checks the actual target instead of trusting a third party's cache.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
src/distbot/plugins/url.py
tests/muc_smoke_check.py
tests/test_unit/test_isdown.py