#python #telethon
Вопрос:
Я не могу подключиться к Telegram с помощью телемарафона.
from telethon import TelegramClient
import logging
api_id = 1111111
api_hash = 'd0111111111111111111111111111111'
client = TelegramClient('session_name', api_id, api_hash)
logging.basicConfig(level=logging.DEBUG)
client.start()
Судя по журналу, похоже, он подключится и сразу же отключится. Telegram не заблокирован в моей стране (Чехия), я обычно использую настольный клиент без какого-либо VPN/прокси. Я попробовал Python 3.7 и Python 3.9.
Смотрите журнал ниже.
INFO:telethon.network.mtprotosender:Connecting to 149.154.167.51:443/TcpFull...
DEBUG:telethon.network.mtprotosender:Connection attempt 1...
DEBUG:telethon.network.mtprotosender:Connection success!
DEBUG:telethon.network.mtprotosender:New auth_key attempt 1...
INFO:telethon.network.connection.connection:The server closed the connection
WARNING:telethon.network.mtprotosender:Connection error 1 during auth_key gen: ConnectionError: Not connected
DEBUG:telethon.network.mtprotosender:Connection attempt 2...
DEBUG:telethon.network.mtprotosender:Connection success!
DEBUG:telethon.network.mtprotosender:New auth_key attempt 2...
INFO:telethon.network.connection.connection:The server closed the connection
WARNING:telethon.network.mtprotosender:Connection error 2 during auth_key gen: ConnectionError: Not connected
DEBUG:telethon.network.mtprotosender:Connection attempt 3...
DEBUG:telethon.network.mtprotosender:Connection success!
DEBUG:telethon.network.mtprotosender:New auth_key attempt 3...
INFO:telethon.network.connection.connection:The server closed the connection
WARNING:telethon.network.mtprotosender:Connection error 3 during auth_key gen: ConnectionError: Not connected
DEBUG:telethon.network.mtprotosender:Connection attempt 4...
DEBUG:telethon.network.mtprotosender:Connection success!
DEBUG:telethon.network.mtprotosender:New auth_key attempt 4...
INFO:telethon.network.connection.connection:The server closed the connection
WARNING:telethon.network.mtprotosender:Connection error 4 during auth_key gen: ConnectionError: Not connected
DEBUG:telethon.network.mtprotosender:Connection attempt 5...
DEBUG:telethon.network.mtprotosender:Connection success!
DEBUG:telethon.network.mtprotosender:New auth_key attempt 5...
INFO:telethon.network.connection.connection:The server closed the connection
WARNING:telethon.network.mtprotosender:Connection error 5 during auth_key gen: ConnectionError: Not connected
DEBUG:telethon.network.mtprotosender:Connection attempt 6...
DEBUG:telethon.network.mtprotosender:Connection success!
DEBUG:telethon.network.mtprotosender:New auth_key attempt 6...
INFO:telethon.network.connection.connection:The server closed the connection
WARNING:telethon.network.mtprotosender:Connection error 6 during auth_key gen: ConnectionError: Not connected
Traceback (most recent call last):
File "c:UsersusernameDocumentsPythontelegram_read_messages.py", line 11, in <module>
client.start()
File "C:UsersusernameAppDataLocalProgramsPythonPython39libsite-packagestelethonclientauth.py", line 133, in start
else self.loop.run_until_complete(coro)
File "C:UsersusernameAppDataLocalProgramsPythonPython39libasynciobase_events.py", line 642, in run_until_complete
return future.result()
File "C:UsersusernameAppDataLocalProgramsPythonPython39libsite-packagestelethonclientauth.py", line 140, in _start
await self.connect()
File "C:UsersusernameAppDataLocalProgramsPythonPython39libsite-packagestelethonclienttelegrambaseclient.py", line 513, in connect
if not await self._sender.connect(self._connection(
File "C:UsersusernameAppDataLocalProgramsPythonPython39libsite-packagestelethonnetworkmtprotosender.py", line 127, in connect
await self._connect()
File "C:UsersusernameAppDataLocalProgramsPythonPython39libsite-packagestelethonnetworkmtprotosender.py", line 253, in _connect
raise ConnectionError('Connection to Telegram failed {} time(s)'.format(self._retries))
ConnectionError: Connection to Telegram failed 5 time(s)
Моя конечная цель-иметь возможность просто подключаться и читать сообщения из групп, в которых я состою.
Любые советы будут оценены по достоинству.
Ответ №1:
Попробуйте выполнить следующие действия: https://docs.telethon.dev/en/latest/
Что-то вроде этого:
from telethon.sync import TelegramClient, events
with TelegramClient('name', api_id, api_hash) as client:
client.send_message('me', 'Hello, myself!')
print(client.download_profile_photo('me'))
@client.on(events.NewMessage(pattern='(?i).*Hello'))
async def handler(event):
await event.reply('Hey!')
client.run_until_disconnected()
Комментарии:
1. Спасибо вам за ответ. К сожалению, это не работает. Я получаю ту же ошибку.
2. Вам нужно использовать телемарафон вместо телемарафона. синхронизируйте, а затем удалите await.
Ответ №2:
Спасибо вам за все предложения. В конце концов, мой исходный код был в полном порядке.
Проблема была связана с сетью.