commit 6f521cf1726ca5566755fc51eabbf9641be987cd from: Aleksey Ryndin date: Tue Feb 13 10:31:45 2024 UTC Fix: No route to mastodon.ml commit - dfe1dea5ba915c5420fdd8c3233b86e3481946f1 commit + 6f521cf1726ca5566755fc51eabbf9641be987cd blob - 1c3d07799a3240bbe304bcca76aa0e8134f9d1c1 blob + 98c84de915ac15b3f79994ebbbeeb1aa4781ac6d --- reru.py +++ reru.py @@ -1,3 +1,4 @@ +import logging import json from argparse import ArgumentParser @@ -6,9 +7,13 @@ from datetime import datetime from http import HTTPStatus from http.server import HTTPServer, BaseHTTPRequestHandler from urllib.request import urlopen +from urllib.error import URLError import xml.etree.ElementTree as ET +logger = logging.getLogger(__name__) + + _FROM = [ ("lor.sh", "ru"), ("mastodon.ml", "rf"), @@ -28,8 +33,14 @@ def _get_accounts_statuses(host, account_id): def _worker(host, name): + try: + statuses = _get_accounts_statuses(host, _lookup_account_id(host, name)) + except URLError as err: + logger.exception(f"Exception when accessing to @{name}@{host}") + return [] + feeds = [] - for status in _get_accounts_statuses(host, _lookup_account_id(host, name)): + for status in statuses: reblog = status.get("reblog") if not reblog: continue