60 lines
1.3 KiB
Python
60 lines
1.3 KiB
Python
from .pogoda import (
|
|
API_URL_WEATHER,
|
|
_session as _weather_session,
|
|
fetch_weather,
|
|
fetch_open_meteo,
|
|
format_weather_data_for_console,
|
|
format_weather_for_message,
|
|
pressure_to_mmhg,
|
|
translate_weather,
|
|
wmo_to_russian,
|
|
)
|
|
from .news import ( # noqa: E402
|
|
_session as _news_session,
|
|
RSS_URL_ARTICLES,
|
|
RSS_URL_POSTS,
|
|
fetch_rss,
|
|
format_articles,
|
|
truncate_title,
|
|
)
|
|
from .cat import ( # noqa: E402
|
|
_session as _cat_session,
|
|
fetch_cat,
|
|
)
|
|
|
|
__all__ = [
|
|
# Погода
|
|
"API_URL_WEATHER",
|
|
"fetch_weather",
|
|
"fetch_open_meteo",
|
|
"format_weather_data_for_console",
|
|
"format_weather_for_message",
|
|
"pressure_to_mmhg",
|
|
"translate_weather",
|
|
"wmo_to_russian",
|
|
# Новости
|
|
"RSS_URL_ARTICLES",
|
|
"RSS_URL_POSTS",
|
|
"fetch_rss",
|
|
"format_articles",
|
|
"truncate_title",
|
|
# Котики
|
|
"fetch_cat",
|
|
# Lifecycle
|
|
"close_all_sessions",
|
|
]
|
|
|
|
|
|
def close_all_sessions() -> None:
|
|
"""Закрыть все requests.Session для освобождения сокетов."""
|
|
for session in (
|
|
_weather_session,
|
|
_news_session,
|
|
_cat_session,
|
|
):
|
|
try:
|
|
session.close()
|
|
except Exception:
|
|
pass # Cleanup — игнорируем ошибки
|
|
|