# Sber History To Excel Проект уже развернут на сервере: ```text https://sber.gb.7af.ru/ ``` Веб-интерфейс выгружает историю операций СберБанк Онлайн за выбранный месяц и скачивает ZIP-архив. Внутри архива лежат: - `.xlsx` с основными полями операций - `.json` со списком всех операций в том виде, в котором они пришли из API ## Как пользоваться 1. Установите расширение Chrome [Get cookies.txt LOCALLY](https://chromewebstore.google.com/detail/get-cookiestxt-locally/cclelndahbckbenkjhflpdbgdldlbecc?pli=1). 2. Откройте [СберБанк Онлайн](https://online.sberbank.ru/CSAFront/index.do) и авторизуйтесь. 3. Скопируйте cookies через расширение. 4. Откройте [https://sber.gb.7af.ru/](https://sber.gb.7af.ru/). 5. Вставьте cookies в поле формы. 6. Выберите месяц и скачайте ZIP-архив. Формат cookies определяется автоматически. Поддерживаются: - Netscape `cookies.txt` - JSON-массив cookies - обычный HTTP-заголовок `Cookie` После вставки cookies форма сразу проверяет, сможет ли сервер распарсить введенный формат. ## Что делает экспорт - Получает операции через API истории операций Сбера. - Забирает данные постранично. - Оставляет только операции за выбранный месяц. - Убирает дубли по идентификатору операции. - Формирует Excel-файл и JSON со всеми исходными данными операций. - Отдает результат ZIP-архивом. В Excel попадают основные поля операции: - дата - получатель - описание - сумма операции - валюта - сумма в RUB - бонусы Спасибо - счет - остаток после операции - статус - тип операции - код категории - ID операции ## Безопасность cookies Cookies дают доступ к аккаунту СберБанк Онлайн в рамках активной сессии. Не сохраняйте их в коде, репозитории или публичных чатах. В веб-интерфейсе cookies используются для запроса к Сберу и не сохраняются в файлы экспорта. ## Возможные ошибки Если cookies устарели, Сбер может вернуть ошибку авторизации. В этом случае нужно снова войти в СберБанк Онлайн в браузере, скопировать свежие cookies и повторить экспорт. Если форма пишет, что cookies не удалось распарсить, проверьте, что вы вставили полный текст cookies из расширения. ## Технические подробности ### Локальный запуск веб-интерфейса ```bash .venv/bin/python web_app.py ``` После запуска откройте: ```text http://127.0.0.1:8000 ``` ### Запуск через Docker Compose ```bash docker compose up --build ``` После запуска интерфейс будет доступен здесь: ```text http://127.0.0.1:8000 ``` В Docker файлы экспорта сохраняются в named volume `sberhistorytoexcel_sber-history-data`. В volume остается только ZIP-архив; временные `.xlsx` и `.json` сохраняются только внутри архива. Остановить контейнер: ```bash docker compose down ``` ### Использование из кода ```python from load_data import SberMonthHistoryExporter exporter = SberMonthHistoryExporter() output_path = exporter.save_month(2026, 5, "sber_may_2026.xlsx") print(output_path) ``` Можно отдельно получить операции без сохранения: ```python from load_data import SberMonthHistoryExporter exporter = SberMonthHistoryExporter() operations = exporter.fetch_month(2026, 5) print(len(operations)) ``` ### Требования для локального запуска - Python 3.10+ - `requests` Установка зависимости: ```bash python3 -m pip install requests ```