Я работаю над клиентом telnet для IBM As400 и столкнулся с некоторыми проблемами при получении нужного количества данных.Сначала программа должна подключиться к сеансу telnet, в котором есть поле имени пользователя и пароля, в которое она пишет, затем перейти к пользовательской оболочке, которая позволяет сотрудникам вводить данные, получать доступ к базе данных и т. Д. Когда я вызываю read_very_eager
, она возвращает буферзаполненный экраном входа и сеансом после входа в систему, а не только сеансом после входа в систему.Я не могу точно сказать, почему это происходит, и другие read_xyz
методы также ничего не печатают или имеют буфер, заполненный только первыми несколькими байтами экрана входа в систему.Мой код следующий (конфиденциальные данные опущены):
def login():
tn = telnetlib.Telnet(host, port)
sleep(1)
tn.write(username + "\t")
tn.write(password + "\r\n")
sleep(1)
data = tn.read_very_eager()
print data
def main():
print "started"
login()
main()