Я хочу сохранить вывод telnet в строковой переменной и проанализировать его, чтобы получить нужную мне информацию, подобно тому, как я должен был вывести ее в файл и проанализировать через нее (этот способ Мне не нужно).Проанализируйте переменную в python
В настоящее время я пытаюсь использовать аргумент «для строки» так же, как и с текстовым документом, но, похоже, он не распознает отдельные строки в переменной (изменяется ли строковая переменная форматирование или нет. не уверен).
Все сценарии Telnet работают правильно, поскольку я ранее выводил их в текстовые файлы и разбирался в них таким образом, я просто пытаюсь устранить шаг.
Вот пример телнета получить просьбу об
tn.write("SomeCommand::SOMEPARAMETERS;\n")
tn.read_until(" EN=0 ENDESC=Succeeded.", TIMEOUT)
output = tn.read_very_eager()
Вот пример вывода телнета
Description of Information
-----------------------------------------
Name1 Name2 Name3 Name4
example1 exampe2 example3 example4
-----------------------------------------
Вот что я написал, чтобы попытаться разобрать и через это.
array = []
for line in output: # Read lines from CPU MEM TEMP
if "example1" in line:
for word in line.split():
array.append(word)
Name1 = array[0]
Name2 = array[1]
Name3 = array[2]
Name4 = array[3]
print (Name1 + Name2 + Name3, etc....)
Может кто-нибудь пролить некоторый свет на Wheter я имею право идея с этим, или это должно быть сделано совершенно diffrent способ просто разбора через текстовый файл (который я работаю, используя аналогичный код)
Спасибо всем
вы уверены, что' read_very_eager' возвращает список строк? Если он возвращает весь текст как одну строку, то 'для строки в выводе' фактически проверяет один символ за раз. В этом случае вам придется сначала разбить его по строкам. – Roberto
Хммм, кажется, ты прав. Я только что протестировал его, тогда только поиск «e» (как в начале примера), и он вернул его. – Billiam
Как бы я решил сначала разделить его на строки? – Billiam