refactor(storage): move reply & processed files
This commit is contained in:
@@ -188,6 +188,7 @@ pyvenv.cfg
|
|||||||
.venv
|
.venv
|
||||||
pip-selfcheck.json
|
pip-selfcheck.json
|
||||||
|
|
||||||
|
*/processed.txt
|
||||||
processed.txt
|
processed.txt
|
||||||
*.log
|
*.log
|
||||||
*.session
|
*.session
|
||||||
|
|||||||
@@ -73,7 +73,7 @@ SKIP_COMMENTED=true
|
|||||||
|
|
||||||
## Шаблоны ответов
|
## Шаблоны ответов
|
||||||
|
|
||||||
Если `ENABLE_REPLY=true`, бот будет комментировать посты. Тексты берутся из файла `replies.txt`.
|
Если `ENABLE_REPLY=true`, бот будет комментировать посты. Тексты берутся из файла `storage/replies.txt`.
|
||||||
|
|
||||||
Каждая строка — отдельный шаблон. Если в строке несколько вариантов через `||`, бот выберет один из них случайно:
|
Каждая строка — отдельный шаблон. Если в строке несколько вариантов через `||`, бот выберет один из них случайно:
|
||||||
|
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ class Config:
|
|||||||
self._config_data = self._load()
|
self._config_data = self._load()
|
||||||
logger.info("Конфигурация успешно загружена.")
|
logger.info("Конфигурация успешно загружена.")
|
||||||
|
|
||||||
def _load_replies(self, file_path: str = "replies.txt"):
|
def _load_replies(self, file_path: str = "storage/replies.txt"):
|
||||||
try:
|
try:
|
||||||
reply_lines = []
|
reply_lines = []
|
||||||
with open(file_path, "r", encoding="utf-8") as replies:
|
with open(file_path, "r", encoding="utf-8") as replies:
|
||||||
|
|||||||
+10
-4
@@ -6,7 +6,7 @@ logger = logging.getLogger(__name__)
|
|||||||
|
|
||||||
|
|
||||||
class ProcessedPostsManager:
|
class ProcessedPostsManager:
|
||||||
def __init__(self, file_path: str = "processed.txt"):
|
def __init__(self, file_path: str = "storage/processed.txt"):
|
||||||
self.file_path = file_path
|
self.file_path = file_path
|
||||||
self.processed_posts: Set[str] = self._load()
|
self.processed_posts: Set[str] = self._load()
|
||||||
|
|
||||||
@@ -14,7 +14,9 @@ class ProcessedPostsManager:
|
|||||||
try:
|
try:
|
||||||
with open(self.file_path, "r", encoding="utf-8") as processed:
|
with open(self.file_path, "r", encoding="utf-8") as processed:
|
||||||
ids = {line.strip() for line in processed if line.strip()}
|
ids = {line.strip() for line in processed if line.strip()}
|
||||||
logger.info(f"Загружено {len(ids)} обработанных постов из {self.file_path}.")
|
logger.info(
|
||||||
|
f"Загружено {len(ids)} обработанных постов из {self.file_path}."
|
||||||
|
)
|
||||||
return ids
|
return ids
|
||||||
|
|
||||||
except FileNotFoundError:
|
except FileNotFoundError:
|
||||||
@@ -22,7 +24,9 @@ class ProcessedPostsManager:
|
|||||||
return set()
|
return set()
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error(f"Ошибка при загрузке {self.file_path}: {e}. Начинаем с пустого списка.")
|
logger.error(
|
||||||
|
f"Ошибка при загрузке {self.file_path}: {e}. Начинаем с пустого списка."
|
||||||
|
)
|
||||||
return set()
|
return set()
|
||||||
|
|
||||||
def _save(self):
|
def _save(self):
|
||||||
@@ -50,4 +54,6 @@ class ProcessedPostsManager:
|
|||||||
self.processed_posts.add(str(post_id))
|
self.processed_posts.add(str(post_id))
|
||||||
self._save()
|
self._save()
|
||||||
added = len(self.processed_posts) - before
|
added = len(self.processed_posts) - before
|
||||||
logger.info(f"Добавлено {added} новых записей в список обработанных (всего: {len(self.processed_posts)}).")
|
logger.info(
|
||||||
|
f"Добавлено {added} новых записей в список обработанных (всего: {len(self.processed_posts)})."
|
||||||
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user