Владимир: tree = etree.parse(file_events)
File "lxml.etree.pyx", line 3427, in lxml.etree.parse (src\lxml\lxml.etree.c:79720)
File "parser.pxi", line 1782, in lxml.etree._parseDocument (src\lxml\lxml.etree.c:115914)
File "parser.pxi", line 1808, in lxml.etree._parseDocumentFromURL (src\lxml\lxml.etree.c:116264)
File "parser.pxi", line 1712, in lxml.etree._parseDocFromFile (src\lxml\lxml.etree.c:115152)
File "parser.pxi", line 1115, in lxml.etree._BaseParser._parseDocFromFile (src\lxml\lxml.etree.c:109849)
File "parser.pxi", line 573, in lxml.etree._ParserContext._handleParseResultDoc (src\lxml\lxml.etree.c:103323)
File "parser.pxi", line 683, in lxml.etree._handleParseResult (src\lxml\lxml.etree.c:104977)
File "parser.pxi", line 613, in lxml.etree._raiseParseError (src\lxml\lxml.etree.c:103886)
lxml.etree.XMLSyntaxError: Premature end of data in tag value line 915, line 915, column 43
abcd0x00: Не совсем понял.Например мне нужно найти deletedPrintedItems и frontLogout. Если использовать один цикл For который будет искать по всему файлу и в этом же цикле проверять условием ( если событие в файле = нужному событию, то распарсивать) это событие. Возможно ли сделать так или же как вы сказали использовать функцию. Вы имели ввиду написать функцию цикла?
abcd0x00: еще такой вопрос. Например кроме события deletedPrintedItems у меня будет еще одно событие. Допустим я присвою ему имя events2. возможно ли в рамках одного цикла for искать сразу эти два события
abcd0x00: Спасибо. все получилось с вашими советами. Есть теперь еще одна задачка. Скрипт нужно выполнять через каждые n минут. Ну или поставлю time.sleep(5). XML файл в течении дня дополняется. То есть один раз я вывел событие, то при следующем распрасивании XML уже его выводить не надо. В каждом событие есть параметр data. Логично что нужно записывать значения data в переменную, и потом сравнивать. Если новое new_data больше old_data, то вывести нужную информацию и произвести присваивание old_data = new_data. Теперь возникает проблема, что python не хранит значений переменных после выполнения скрипта. Есть мысль записывать значение даты в файл, а потом считывать оттуда и сравнить. Есть более элегантное решение?
Я еще ввел переменную date, в которую записывается время события. если значение времени больше предыдущего, то выводить информацию. Если нет, то сканировать дальше файл