Вышел Gazetteer — офлайн геокодер на Python, который не врёт на границах
Небольшое напоминание, зачем это вообще нужно:
➡️ Reverse geocoding — когда есть координаты, а нужно понять что там: страна, регион, город. Нужно для аналитики доставки, логистики, геотаргетинга, обработки GPS-логов. Проблема: большинство офлайн-решений ищут ближайшую точку (nearest-neighbor). У границ это ломается — ближайший город может быть в другой стране.
Gazetteer проверяет, в какой полигон реально попадает координата. KD-Tree для быстрого отсева + валидация вхождения в polygon.
Характеристики
🔘 210+ стран, 145 000+ административных границ
🔘 10 000 координат за <2 секунды (<0,4 мс на точку)
🔘 Single-process и multiprocessing
🔘 Без внешних API — никаких лимитов и платежей
🔘 Автор говорит, что начинал как toy project, но оказалось production-ready.
📎 Код на GitHub, документация на сайте
@zen_of_python
Небольшое напоминание, зачем это вообще нужно:
Gazetteer проверяет, в какой полигон реально попадает координата. KD-Tree для быстрого отсева + валидация вхождения в polygon.
Характеристики
@zen_of_python
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7
Servy — свежий проект для запуска Python-скриптов (на самом деле не только Python) как Windows-сервисов без боли
Проблема: нужно, чтобы Python-скрипт работал в фоне как сервис Windows: стартовал при загрузке, перезапускался при падении, писал логи. Стандартный sc работает только с приложениями, специально написанными как сервисы, а pythonw.exe + Task Scheduler — костыль без нормального мониторинга.
Решение: Servy. Указываешь путь к Python, скрипт, аргументы, рабочую директорию, env-переменные → Install → готово. Есть GUI для тех, кто не любит CLI.
Что умеет
🔘 Логирование stdout/stderr с ротацией (по размеру и дате)
🔘 Health checks + автоперезапуск при падении
🔘 Мониторинг CPU/RAM в реальном времени
🔘 Уведомления о падениях
🔘 Pre/post-launch хуки
🔘 Экспорт/импорт конфигов
Установка
📎 Код на GitHub, пример для Python, на видео демо
@zen_of_python
Проблема: нужно, чтобы Python-скрипт работал в фоне как сервис Windows: стартовал при загрузке, перезапускался при падении, писал логи. Стандартный sc работает только с приложениями, специально написанными как сервисы, а pythonw.exe + Task Scheduler — костыль без нормального мониторинга.
Решение: Servy. Указываешь путь к Python, скрипт, аргументы, рабочую директорию, env-переменные → Install → готово. Есть GUI для тех, кто не любит CLI.
Что умеет
Установка
winget install servy
choco install -y servy
scoop install servy
@zen_of_python
Media is too big
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3