Не подключается к аккаунту telegram через telethon
Мой код
from telethon import TelegramClient
api_id = 11111
api_hash = 'xxxxxxxxxxxxxxx'
client = TelegramClient('name', api_id, api_hash)
async def main():
print('work')
with client:
client.loop.run_until_complete(main())
При запуске спрашивает номер телефона и код из смс:
Please enter your phone (or bot token): +7111111111
Please enter the code you received: 11111
и после этого все виснет, print('work') не приходит
Ответы (1 шт):
Автор решения: Никита
→ Ссылка
Попробуй следующий код с учетом 2FA (ковычки не убирай там где они есть, а там где их нет не добавляй):
from telethon.sync import TelegramClient
from telethon.errors import SessionPasswordNeededError
# Ваши данные API
api_id = твой api_id
api_hash = 'твой api_hash'
phone_number = 'твой номер телефона'
# Авторизация в Telegram
client = TelegramClient('session', api_id, api_hash)
client.start(phone_number)
# Обработка 2FA
try:
# Попытка авторизации без пароля
client.connect()
except SessionPasswordNeededError:
# Требуется пароль 2FA
password = input('Введите пароль 2FA: ')
client.start(phone_number, password=password)
Это только чтобы подключиться, если хочешь сразу закрыть соединение то со следующей строки пишешь:
# Завершение сеанса
client.disconnect()
Если не сразу закрываешь соединение то уже пишешь то что тебе нужно