Skip to content

Commit 8525ee7

Browse files
committed
Рефакторинг кода
1 parent 72b21e4 commit 8525ee7

File tree

5 files changed

+10
-10
lines changed

5 files changed

+10
-10
lines changed

README.md

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,4 @@ accounts/<id_user>/<account_name>.session
2222
* <id_user> — Telegram ID пользователя, который загрузил аккаунт в бота;
2323
* <account_name>.session — сессия Telegram-аккаунта, используемого для мониторинга сообщений.
2424

25-
Группы для парсинга вносятся в формате @username
26-
27-
28-
Если подключен 1 аккаунт, то второй подключен не может быть. Бот удаляет аккаунты из папки и обновляет новым аккаунтом.
25+
Группы для парсинга вносятся в формате @username

database/database.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
# -*- coding: utf-8 -*-
2-
from peewee import Model, SqliteDatabase, IntegerField, CharField
2+
from peewee import Model, CharField, AutoField
3+
from peewee import SqliteDatabase, IntegerField
34

45
db = SqliteDatabase('bot.db')
56

@@ -30,6 +31,7 @@ class Meta:
3031
def create_keywords_model(user_id):
3132
class Keywords(Model):
3233
"""Модель для хранения ключевых слов"""
34+
id = AutoField() # <-- добавляем первичный ключ (иначе всё пишется в одну строку)
3335
user_keyword = CharField(unique=True) # Поле для хранения ключевого слова
3436

3537
class Meta:

handlers/handlers.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
# -*- coding: utf-8 -*-
2-
32
from aiogram import F
43
from aiogram.filters import CommandStart
54
from aiogram.fsm.context import FSMContext

main.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55

66
from loguru import logger
77

8-
from handlers.connect_account import register_connect_account_handler
98
from handlers.entering_keyword import register_entering_keyword_handler
109
from handlers.handlers import register_greeting_handler
1110
from system.dispatcher import dp, bot
@@ -19,7 +18,7 @@ async def main() -> None:
1918
:return: None
2019
"""
2120
register_greeting_handler()
22-
register_connect_account_handler() # Регистрация обработчика для подключения аккаунта
21+
2322
register_entering_keyword_handler() # Регистрация обработчика для ввода и записи в БД ключевых слов
2423

2524
await dp.start_polling(bot)

parsing/parser.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,8 +88,11 @@ async def join_required_channels(client: TelegramClient, user_id):
8888
if e.seconds:
8989
logger.warning(f"⚠️ Превышено ограничение на количество запросов в секунду. Ожидание {e.seconds} секунд...")
9090
await asyncio.sleep(e.seconds)
91-
await client(JoinChannelRequest(channel))
92-
logger.success(f"✅ Подписка на {channel} выполнена")
91+
try:
92+
await client(JoinChannelRequest(channel))
93+
logger.success(f"✅ Подписка на {channel} выполнена")
94+
except InviteRequestSentError:
95+
logger.error(f"❌ Невозможно подписаться на {channel} (приглашение уже отправлено)")
9396
except ValueError:
9497
logger.error(f"❌ Не удалось подписаться на {channel} (невалидная ссылка)")
9598
# Удаляем невалидную запись из базы

0 commit comments

Comments
 (0)