0
0 Комментариев

Python 3.8

Здравствуйте у меня опять проблема

Нужно корректно спарсить название роутера.

Самое лучшее что решение которое я смог найти это выдернуть название из config файла на роутере

tn.write(‘show running-config’.encode(‘utf-8′) + b’\n’)
time.sleep(4)
out1 = tn.read_very_eager().decode(‘utf-8’)
out1 = out1.split(‘ ‘)
if ‘Model:’ in out1:
i1 = out1.index(‘Model:’)
model = (out1[i1 + 1]) + ‘ ‘ + (out1[i1 + 2]) + ‘ ‘ + (out1[i1 + 3]))
else:
model = «неизвестная модель»

вывод out1

[‘s\x1b[Kh\x1b[Ko\x1b[Kw\x1b[K’, ‘\x1b[Kr\x1b[Ku\x1b[Kn\x1b[Kn\x1b[Ki\x1b[Kn\x1b[Kg\x1b[K-\x1b[Kc\x1b[Ko\x1b[Kn\x1b[Kf\x1b[Ki\x1b[Kg\x1b[K\r\n!’, ‘$$$’, ‘Model:’, ‘Keenetic’, ‘Extra\r\n!’, ‘$$$’, ‘Version:’, ‘2.06.1\r\n!’, ‘$$$’, ‘Agent:’, ‘http/rci\r\n!’,

Вывод out 1 может быть различным в зависимости от модели оборудования но есть несколько параметров которые всегда идентичны

Модель находитится между $$$’ model $$$’

при таком написании скрипта как выше захавтывается Keenetic Extra
! $$$

А если модель Zyxel Keenetic Extra II

То захватывается Zyxel Keenetic Extra а II отбрасывается

скажите как спарсить название модели от ‘$$$’ до ‘$$$’


Добавить комментарий