Получение истории сообщений в Telegram и запись в массив более 100 значений python telethon

Работа с telegram api через telethon на python. Я получаю историю сообщений чата за конкретный день и записываю её в массив. Всё работает, но в массив записывается только 100 значений, т.е. если уже записано 100 значений, то следующие значения будут перезаписывать старые. Вот полный код:

from datetime import datetime
from telethon.tl import functions
from telethon.sync import TelegramClient

api_id = ...
api_hash = ""

link = 'https://t.me/DateKievChat'

day = 1
mon = 1
year = 2021

client = TelegramClient('client', api_id, api_hash)
client.connect()

result = client(functions.messages.GetHistoryRequest(
                            peer=link,
                            offset_id=0,
                            offset_date=datetime(year, mon, day),
                            add_offset=0,
                            limit=1000,
                            max_id=0,
                            min_id=0,
                            hash=0
                        ))

print(len(result.messages))
#print(result.stringify())

После выполнения данного кода всегда выводится 100. Если посмотреть на результат, то там будут сообщения до 23-23.59, т.е. последние 100 сообщений. Как можно записать все полученные значения?

За максимальное возвращаемое значение отвечает limit=1000, но если он больше 100, всё равно возвращается не более 100 результатов, при этом если уменьшить его, то он вернёт меньше результатов.


Ответы (0 шт):