Здравствуйте, пытаюсь написать простой скриптик на python и telethon. Столкнулся с проблемой, что после каждого запуска скрипта нужно логиниться, вводить телефон и код подтверждения, но почему, ведь для этого есть файл сессии, видимо он не работает или есть какая-то ошибка в коде?
import csv
from telethon.sync import TelegramClient
api_id = 'ваш_api_id'
api_hash = 'ваш_api_hash'
session_file = 'my_session'
chat_url = 'chat_url '
with TelegramClient(session_file, api_id, api_hash) as client:
entity = client.get_entity(chat_url)
messages = client.iter_messages(entity)
unique_users = set()
for message in messages:
user = message.sender
if user and user.username:
unique_users.add(user)
with open('user_data.csv', 'w', newline='', encoding='utf-8') as csvfile:
fieldnames = ['Имя', 'Ссылка на профиль', 'Название чата']
writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
writer.writeheader()
for user in unique_users:
writer.writerow({
'Имя': f'{user.first_name} {user.last_name}',
'Ссылка на профиль': f'https://t.me/{user.username}',
'Название чата': entity.title
})