python telethon ConnectionError: Connection to Telegram failed 5 time(s)
python telethon ConnectionError: Connection to Telegram failed 5 time(s)
我正在尝试通过 python 获取频道中发送的每条新消息,然后使用这些数据进行进一步处理。这是我的代码:
api_id = *******
api_hash = '**********************'
client = TelegramClient(
'session_name',
api_id,
api_hash,
)
client.start()
print(client.get_me().stringify())
client.send_message('someone', 'Hello! Talking to you from Telethon')
这是我得到的错误:
C:\Users\erfan\AppData\Local\Programs\Python\Python39\python.exe "C:/Users/erfan/Desktop/Boors py/main.py"
Traceback (most recent call last):
File "C:\Users\erfan\Desktop\Boors py\main.py", line 14, in <module>
client.start()
File "C:\Users\erfan\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\client\auth.py", line 133, in start
else self.loop.run_until_complete(coro)
File "C:\Users\erfan\AppData\Local\Programs\Python\Python39\lib\asyncio\base_events.py", line 642, in run_until_complete
return future.result()
File "C:\Users\erfan\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\client\auth.py", line 140, in _start
await self.connect()
File "C:\Users\erfan\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\client\telegrambaseclient.py", line 516, in connect
if not await self._sender.connect(self._connection(
File "C:\Users\erfan\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\network\mtprotosender.py", line 123, in connect
await self._connect()
File "C:\Users\erfan\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\network\mtprotosender.py", line 249, in _connect
raise ConnectionError('Connection to Telegram failed {} time(s)'.format(self._retries))
ConnectionError: Connection to Telegram failed 5 time(s)
Process finished with exit code 1
Telegram 被我的国家屏蔽了。所以我用Lantern访问它,我可以访问web.telegram.com。我也试过使用 mtproxy 但得到了同样的错误。
我不知道我的代码的哪一部分是错误的,但看到很多人遇到同样的问题,我决定 post 我的解决方案。
在 this article 的帮助下,我可以很好地完成电视节目。
正如我所说,电报在我的国家被封锁,所以我可以在 telethon documentation 的帮助下使用 MTProxy 在这部分:2.2.5 使用 MTProto 代理。
我正在尝试通过 python 获取频道中发送的每条新消息,然后使用这些数据进行进一步处理。这是我的代码:
api_id = *******
api_hash = '**********************'
client = TelegramClient(
'session_name',
api_id,
api_hash,
)
client.start()
print(client.get_me().stringify())
client.send_message('someone', 'Hello! Talking to you from Telethon')
这是我得到的错误:
C:\Users\erfan\AppData\Local\Programs\Python\Python39\python.exe "C:/Users/erfan/Desktop/Boors py/main.py"
Traceback (most recent call last):
File "C:\Users\erfan\Desktop\Boors py\main.py", line 14, in <module>
client.start()
File "C:\Users\erfan\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\client\auth.py", line 133, in start
else self.loop.run_until_complete(coro)
File "C:\Users\erfan\AppData\Local\Programs\Python\Python39\lib\asyncio\base_events.py", line 642, in run_until_complete
return future.result()
File "C:\Users\erfan\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\client\auth.py", line 140, in _start
await self.connect()
File "C:\Users\erfan\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\client\telegrambaseclient.py", line 516, in connect
if not await self._sender.connect(self._connection(
File "C:\Users\erfan\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\network\mtprotosender.py", line 123, in connect
await self._connect()
File "C:\Users\erfan\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\network\mtprotosender.py", line 249, in _connect
raise ConnectionError('Connection to Telegram failed {} time(s)'.format(self._retries))
ConnectionError: Connection to Telegram failed 5 time(s)
Process finished with exit code 1
Telegram 被我的国家屏蔽了。所以我用Lantern访问它,我可以访问web.telegram.com。我也试过使用 mtproxy 但得到了同样的错误。
我不知道我的代码的哪一部分是错误的,但看到很多人遇到同样的问题,我决定 post 我的解决方案。 在 this article 的帮助下,我可以很好地完成电视节目。 正如我所说,电报在我的国家被封锁,所以我可以在 telethon documentation 的帮助下使用 MTProxy 在这部分:2.2.5 使用 MTProto 代理。