2026-05-06 15:58:53 +03:00

98 lines
2.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Sber History To Excel
Скрипт выгружает историю операций СберБанк Онлайн за выбранный месяц и сохраняет ее в один Excel-файл `.xlsx`.
## Что делает
- Получает операции через API истории операций Сбера.
- Забирает данные постранично.
- Оставляет только операции за указанный месяц.
- Убирает дубли по идентификатору операции.
- Сохраняет результат в один `.xlsx` файл.
## Требования
- Python 3.10+
- Библиотека `requests`
- Актуальный Cookie авторизованной сессии СберБанк Онлайн
Установка зависимости:
```bash
python3 -m pip install requests
```
## Настройка Cookie
Скрипт берет Cookie из переменной окружения `Cookie`.
```bash
export Cookie='твой-cookie-из-браузера'
```
Не сохраняй Cookie в коде или в репозитории: это чувствительные данные доступа к аккаунту.
## Запуск
Пример выгрузки операций за май 2026 года:
```bash
python3 load_data.py --year 2026 --month 5 --output sber_may_2026.xlsx
```
Если `--output` не указать, файл будет создан с именем:
```text
sber_operations_2026_05.xlsx
```
## Использование из кода
```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))
```
## Формат результата
В Excel попадают основные поля операции:
- дата
- получатель
- описание
- сумма операции
- валюта
- сумма в RUB
- бонусы Спасибо
- счет
- остаток после операции
- статус
- тип операции
- код категории
- ID операции
## Возможные ошибки
Если Cookie не задан:
```text
ValueError: Set Sber auth cookie in the Cookie environment variable.
```
Если Cookie устарел, Сбер может вернуть ошибку авторизации. В этом случае нужно снова войти в СберБанк Онлайн в браузере и обновить значение переменной `Cookie`.