Как исправить недочёт бота на aiogram, чтобы выводил все сообщения, начиная с заданной даты?
Как исправить недочёт бота на aiogram, чтобы выводил все сообщения, начиная с заданной даты? Я ввожу дату боту, он её переводит в объект datetime, а далее парсит все сообщения из нужного мне чата. Однако, в конечном файле, записывается только одно сообщение, а не все. Что тут неверно?
async def telegram_chat_parser(message: str, user_id_get: int):
chat_link, date_str = message.split(',')
date = datetime.strptime(date_str.strip(), '%d.%m.%Y')
msg = []
usernames = []
name_of_file = str(message.split('/')[-1])
async with TelegramClient('session', api_id, api_hash) as client:
entity = await client.get_entity(chat_link)
all_messages = await client.get_messages(entity, reverse=True, offset_date=date)
msg = []
usernames = []
name_of_file = str(message.split('/')[-1])
for mes in all_messages:
msg.append(mes.message)
user_name = mes.from_id
user_entity = await client.get_entity(user_name)
usernames.append(f"@{user_entity.username if user_entity is not None else None}")
df = pd.DataFrame({'Содержание публикации': [title for title in msg],
'Автор сообщения': [name for name in usernames]})
with pd.ExcelWriter(f"{name_of_file}_chat_tg.xlsx", engine='xlsxwriter') as writer:
df.to_excel(writer, sheet_name=f"{name_of_file}", index=False)
worksheet_page = writer.sheets[f"{name_of_file}"]
worksheet_page.set_column('A:B', 100)
worksheet_page.set_column('B:C', 50)
with open(f"{name_of_file}_chat_tg.xlsx", 'rb') as file:
await bot.send_document(chat_id=user_id_get, document=file)