Не получаю никаких ответов от telnet в python
Сервер подключается, хотя. В качестве альтернативы я попробовал команды в putty и получил ответ оттуда, но я не знаю, почему код не работает: Вот фрагмент кода, который не работает
import telnetlib
host = 'aspmx2.googlemail.com'
timeout = 5
session = telnetlib.Telnet(host, 25, timeout)
session.open(host,port ='25',timeout = timeout)
session.write("\r\n")
print(session.read_until("\n\r",10))
session.write("helo hi"+b"\r")
print(session.read_until("\n\r",10))
session.write(('MAIL FROM:someone@gmail.com').encode('ascii') + b"\r")
frommail= session.read_until(b"/r/n/r/n#>", timeout-1 )
session.write(('RCPT TO:someoneelse@gmail.com').encode('ascii') + b"\r")
check= session.read_until(b"/r/n/r/n#>", timeout-1 )
session.close()
На это я получаю следующий ответ:
220 mx.google.com ESMTP y13si5854003pde.84 - gsmtp
[Finished in 28.1s]
1 ответ
Решение
Похоже, вы не переходите на новую строку, когда пишете в сеанс.
Ваши команды записи могут выглядеть так:
session.write("helo hi"+b"\r\n")
ИЛИ ЖЕ
session.write(('MAIL FROM:someone@gmail.com').encode('ascii') + b"\r\n")
Надеюсь это поможет.