<b>7 ошибок в Python-скриптах, из-за которых автоматизация ломается на ровном месте</b>
В Python чаще всего падает не «логика», а обвязка: ввод, сеть, файлы, окружение. Если скрипт живёт дольше одного запуска, проверь базу:
— не ловишь ли ты исключения через голый except;
— не смешиваешь ли print и нормальный logging;
— не рассчитываешь ли на порядок в dict там, где нужен явный сорт;
— не читаешь ли файл целиком, когда хватит итерации по строкам.
Ещё одна типовая проблема — скрытые зависимости. Скрипт работает у тебя, но ломается на сервере, потому что путь относительный, переменные окружения не заданы, а формат входных данных чуть отличается. Сюда же относятся:
— жёстко прошитые URL, токены и пути;
— отсутствие проверок на пустой ответ;
— работа без таймаутов для запросов;
— ожидание, что внешний сервис всегда вернёт JSON.
Если есть асинхронщина, отдельно смотри на блокировки: один случайный requests, тяжёлый парсинг или синхронный драйвер внутри event loop убивают смысл asyncio. Для фоновых задач полезно сразу разделять: I/O отдельно, CPU отдельно, ошибки отдельно.
Хороший скрипт — это не тот, который «один раз отработал», а тот, который переживает пустые данные, сетевые сбои и чужую среду. Перед запуском в проде прогоняй чек: вход, таймауты, логи, конфиг, исключения, и только потом логику.
Python Web & Scripts — Django, FastAPI, скрипты
@python_web_scripts
<b>7 ошибок в Python-скриптах, из-за которых автоматизация ломается на ровном месте</b>
Этот пост опубликован в Telegram-канале Python Web & Scripts — Django, FastAPI, скрипты. Подписаться можно по ссылке: @python_web_scripts.