import asyncio from config import OUTPUT_FILE class ResultWriter: """Пишет найденные свободные юзернеймы построчно. Файл открывается на дозапись при каждом вызове add(), так что если скрипт упадёт на середине прогона - уже найденное никуда не денется.""" def __init__(self, path: str = OUTPUT_FILE): self.path = path self._lock = asyncio.Lock() def reset(self): open(self.path, "w", encoding="utf-8").close() async def add(self, profile_url: str, username: str): line = f"{profile_url} - {username}\n" async with self._lock: with open(self.path, "a", encoding="utf-8") as f: f.write(line) f.flush()