Во время обучения написал данный код. он почти бессмысленен. Меняю дату и время. дату автоматически, а время корректирую вручную. А вопросы такие у меня:
1) tn.read_until(b“Copyright © 1994 - 2006 ZyXEL Communications Corp.”): зачем тут b перед кавычками ?
2) tn.write(data.encode('utf-8') +b“\n”) зачем тут utf-8?
3) если допустим я задаю команду help, она выдает список команд и
-- more --, next page: Space, continue: c, quit: ESC
4) почему в ответе на команду print(tn.read_all().decode('utf-8')) получаются какие - то символы семерки итд итп?
ÂÂÅÄÈÒÅ ÄÀÒÓ Â ÔÎÐÌÀÒÅ ìåñÿö/÷èñëî/ãîä: 03/03/03
ÂÛ Â ÊÎÍÔÈÃÅ
ÂÛ ÈÇÌÅÍÈËÈ ÂÐÅÌß
7show time
exit
777777777Current Time 04:14:01
Current Date 2014-03-03
ES-2108# 77777
Сама программа
import telnetlib import datetime t = input("ВВЕДИТЕ ВРЕМЯ В ФОРМАТЕ часы:минуты:секунды: ")#тут корректируется время вручную #d = input("ВВЕДИТЕ ДАТУ В ФОРМАТЕ месяц/число/год: ") d1 = datetime.date.today()#тут сегодняшняя дата автоматически d = d1.strftime("%m/%d/%Y") print(d) data = 'time date %s' % d #тут команда на управляемом свиче для смены даты time = 'time %s' % t HOST = "172.22.203.1" #user = input("Введите ваш логин: ") #password = input("Введите ваш пароль: ") user = 'admin' password = '1234' tn = telnetlib.Telnet(HOST) tn.read_until(b"User name: ") tn.write(user.encode('utf-8') + b"\n") if tn.read_until(b"Password:"): tn.write(password.encode('utf-8') + b"\n") if tn.read_until(b"Copyright (c) 1994 - 2006 ZyXEL Communications Corp."): tn.read_until(b"ES-2108#") tn.write(b"configure\n") if tn.read_until(b"ES-2108(config)#"): print('ВЫ В КОНФИГЕ СВИЧА') tn.write(data.encode('utf-8') +b"\n")# изменяем дату tn.write(time.encode('utf-8') +b"\n")#изменяем время print('ВЫ ИЗМЕНИЛИ ДАТУ И ВРЕМЯ') tn.write(b"exit\n") tn.read_until(b"ES-2108#") tn.write(b"show time\n") #tn.write(b"help\n") tn.write(b"exit\n") print(tn.read_all().decode('utf-8')) input()