Поиск Python в xml

#python #xml #parsing

#python #xml #синтаксический анализ

Вопрос:

Я хотел бы написать анализатор для xml, который может записывать имя и значения данных (apple, 10, …) в текстовый текст. Это формат файла:

 <b>Data1                    </b>: apple
<b>Data2                    </b>: 10
<b>Data3                    </b>: 01
<b>Data4                    </b>: 1001
 

Это всего лишь небольшая часть файла.
Моя идея состоит в том, чтобы написать цикл for, который будет перебирать файл по строкам и проверять, имеет ли он этот формат. Если это true, сохраните имя данных и значение.
Как я могу выполнить поиск этих строк и сохранить имя и значение данных?
Спасибо

Комментарии:

1. Добро пожаловать в Stack Overflow! Не ясно, в чем проблема. Пожалуйста, не просто спрашивайте о решениях. Что вы пробовали до сих пор ?.

Ответ №1:

попробуйте использовать этот код для получения всех данных из этого xml

 import re
file_content ="""<b>Data1                    </b>: apple
<b>Data2                    </b>: 10
<b>Data3                    </b>: 01
<b>Data4                    </b>: 1001"""
importent_lines = re.findall("<b>Datad  *</b>: d " , a)
data_list = [re.findall("d ", line)[-1] for line in importent_lines]
 

вы можете удалить importent_line , если все строки имеют одинаковый формат и все строки важны, и заменить его на file.readlines() .

Комментарии:

1. Я немного отредактировал свой вопрос, извините. И, насколько я знаю, это: re.findall(«<b>Datad *</b>: d » , a) вернет только значения, которые являются цифрами, но у меня тоже есть слова.

2. Итак, вам нужно изменить эти строки на ‘importent_lines = re.findall(«<b> Datad *</ b>: w » , file_content) data_list = [re.findall(«w «, строка)[-1] для строки в importent_lines]’