LonamiWebs / Telethon

Pure Python 3 MTProto API Telegram client library, for bots too!
https://docs.telethon.dev
MIT License
9.77k stars 1.39k forks source link

TypeError: ConnectEx(): illegal address_as_bytes argument #3671

Closed rastiorastio closed 2 years ago

rastiorastio commented 2 years ago

I am getting error like:

TypeError: ConnectEx(): illegal address_as_bytes argument

I used code from here https://github.com/LonamiWebs/Telethon/issues/1592#issuecomment-973588662

Guy here said it works for him...

This is my part of code where i am getting this error:

client = TelegramClient(f"sessions/{phone}", self.api_id, self.api_hash, proxy=dict(proxy_type=socks.SOCKS5, addr='0.0.0.0', port='0000'))

Traceback

Traceback (most recent call last):
  File "C:\Users\Administrator\Desktop\No1gram\No1gram.py", line 999, in <module>
    main()
  File "C:\Users\Administrator\Desktop\No1gram\No1gram.py", line 940, in main
    maker.create_account()
  File "C:\Users\Administrator\Desktop\No1gram\No1gram.py", line 300, in create_account
    client.connect()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\sync.py", line 39, in syncified
    return loop.run_until_complete(coro)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\asyncio\base_events.py", line 642, in run_until_complete
    return future.result()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\client\telegrambaseclient.py", line 525, in connect
    if not await self._sender.connect(self._connection(
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\network\mtprotosender.py", line 127, in connect
    await self._connect()
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\network\mtprotosender.py", line 227, in _connect
    connected = await self._try_connect(attempt)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\network\mtprotosender.py", line 277, in _try_connect
    await self._connection.connect(timeout=self._connect_timeout)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\network\connection\connection.py", line 244, in connect
    await self._connect(timeout=timeout, ssl=ssl)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\network\connection\connection.py", line 225, in _connect
    sock = await self._proxy_connect(
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\telethon\network\connection\connection.py", line 135, in _proxy_connect
    sock = await proxy.connect(
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\python_socks\async_\asyncio\_proxy.py", line 62, in connect
    return await self._connect(_socket=_socket)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\python_socks\async_\asyncio\_proxy.py", line 70, in _connect
    _socket = await connect_tcp(
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\python_socks\async_\asyncio\_connect.py", line 28, in connect_tcp
    await loop.sock_connect(sock=sock, address=address)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\asyncio\proactor_events.py", line 702, in sock_connect
    return await self._proactor.connect(sock, address)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\asyncio\windows_events.py", line 596, in connect
    ov.ConnectEx(conn.fileno(), address)
TypeError: ConnectEx(): illegal address_as_bytes argument
rastiorastio commented 2 years ago

Solved.... port cant be in ''

So it should look like this:

client = TelegramClient(f"sessions/{phone}", self.api_id, self.api_hash, proxy=dict(proxy_type=socks.SOCKS5, addr='0.0.0.0', port=0000))

So not

port='0000'

but

port=0000

Thats all... and this works