refactoring
This commit is contained in:
parent
8feab719bf
commit
afa07aeda7
40
README.md
40
README.md
|
|
@ -13,43 +13,3 @@ Telegram-бот, который автоматически парсит и от
|
||||||
- Просмотр трёх типов отключений
|
- Просмотр трёх типов отключений
|
||||||
- Автоматическое обновление данных каждые **5 минут**
|
- Автоматическое обновление данных каждые **5 минут**
|
||||||
- Удобный интерфейс через Telegram
|
- Удобный интерфейс через Telegram
|
||||||
- Подробное логирование запросов и ошибок
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Запуск
|
|
||||||
|
|
||||||
### 1. Клонируйте репозиторий
|
|
||||||
|
|
||||||
### 2. Настройте конфигурацию
|
|
||||||
Скопируйте `.env.example` в `.env` и отредактируйте.
|
|
||||||
```python
|
|
||||||
BOT_TOKEN=xxxxxxxxxxxxxxxxxxxxx
|
|
||||||
WEBHOOK_URL=https://ваш-домен.ru
|
|
||||||
```
|
|
||||||
|
|
||||||
### 3. Соберите и запустите через Docker
|
|
||||||
```bash
|
|
||||||
docker build -t mrsk_bot .
|
|
||||||
docker run -d \
|
|
||||||
--name mrsk_bot \
|
|
||||||
-p 5000:5000 \
|
|
||||||
-v $(pwd)/logs:/app/logs \
|
|
||||||
mrsk_bot
|
|
||||||
```
|
|
||||||
|
|
||||||
- Или через docker compose
|
|
||||||
|
|
||||||
> Убедитесь, что ваш сервер доступен по `URL_APP` и настроен reverse proxy (например, Nginx) на порт 5000.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Обратная связь
|
|
||||||
|
|
||||||
Если у вас есть вопросы, предложения или вы нашли баг — пишите: [@pikusQQ](https://t.me/pikusQQ)
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
> ⚠️ **Важно**: Бот использует **webhook**, поэтому должен быть развёрнут на сервере с HTTPS.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
|
||||||
4
main.py
4
main.py
|
|
@ -105,11 +105,11 @@ def parse_and_save(data, file_path: Path, mode: str):
|
||||||
street = clean_street(item.get("DisconnectionObject", ""))
|
street = clean_street(item.get("DisconnectionObject", ""))
|
||||||
time_down = format_time(item.get("DisconnectionDateTime", ""))
|
time_down = format_time(item.get("DisconnectionDateTime", ""))
|
||||||
time_up = format_time(item.get("EnergyOnPlanningDateTime", ""))
|
time_up = format_time(item.get("EnergyOnPlanningDateTime", ""))
|
||||||
lines.append(f"{street}\nВремя: с {time_down} по {time_up}\n{'-' * 30}")
|
lines.append(f"{street}\nВремя: с {time_down} по {time_up}\n{'─' * 20}")
|
||||||
elif mode == 'avar':
|
elif mode == 'avar':
|
||||||
street = clean_street(item.get("StreetHome", ""))
|
street = clean_street(item.get("StreetHome", ""))
|
||||||
time_up = format_time(item.get("ScheduledTimeRemoval", ""))
|
time_up = format_time(item.get("ScheduledTimeRemoval", ""))
|
||||||
lines.append(f"{street}\nВосстановление: ~{time_up}\n{'─' * 30}")
|
lines.append(f"{street}\nВосстановление: ~{time_up}\n{'─' * 20}")
|
||||||
|
|
||||||
file_path.write_text('\n'.join(lines), encoding='utf-8')
|
file_path.write_text('\n'.join(lines), encoding='utf-8')
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user