Подмена надписи

ZulusKO

Новичок
Пользователь
Окт 12, 2022
3
0
1
Имеется скрипт, для снятия показаний на приборе.
Код:
                ('1.3.6.1.4.1.41927.2.15.1.5'),  # IP
        ('1.3.6.1.4.1.41927.2.15.2.6'),  # Температура
        ('1.3.6.1.4.1.41927.2.15.2.7'),  # Вольтаж
        ('1.3.6.1.4.1.41927.2.15.2.1'),  # Входящий оптический сигнал
        ('1.3.6.1.4.1.41927.2.15.1.4'),  # Время работы              
    )
    if errorIndication:
        return errorIndication
    else:
        if errorStatus:
            return'%s at %s' % (
                errorStatus.prettyPrint(),
                errorIndex and varBindTable[-1][int(errorIndex) - 1] or '?'
            )
        else:
            data = []
            for varBindTableRow in varBindTable:
                for name, val in varBindTableRow:
                    data.append('%s = %s' % (name.prettyPrint(), val.prettyPrint()))
            return '\n'.join(data)
Хотелось бы, чтобы сообщения OID' а типа:
Код:
SNMPv2-SMI::enterprises.41927.2.15.2.6.0
не выводились, а вместо них были надписи показателей, с каких считывается. Возможно ли это как то замутить? Фото прилагаю. Спасибо.
Сейчас: SNMPv2-SMI::enterprises.41927.2.15.2.6.0 = 31
Хотелось бы, Температура = 31
 
Последнее редактирование:

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
этот код будет конвертировать каждый раз новое время при запросе?
сколько милисекунд дадите, столько он и сконвертирует
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
ну замените на то что нужно, например, с помощью replace()
или сделайте словарь, и подставляйте значение по ключу
 

ZulusKO

Новичок
Пользователь
Окт 12, 2022
3
0
1
Сделано, благодарю. Как бы еще сделать так, чтобы время работы мыло не в мс, а в нормальном режиме (дни, часы, минуты). Спасибо.
 
Последнее редактирование:

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
Python:
>>> from datetime import timedelta
>>> timedelta(milliseconds=4274483)
datetime.timedelta(seconds=4274, microseconds=483000)
>>> str(timedelta(milliseconds=4274483))
'1:11:14.483000'
 

ZulusKO

Новичок
Пользователь
Окт 12, 2022
3
0
1
Python:
>>> from datetime import timedelta.......'
этот код будет конвертировать каждый раз новое время при запросе?
 

Форум IT Специалистов