У меня есть полный каталог (~ 10 , 10) файлов XML, из которых мне нужно извлечь содержимое нескольких полей. Я тестировал разные синтаксические анализаторы xml, и поскольку мне не нужно проверять содержимое (дорого), я думал просто использовать xml.parsers.expat (самый быстрый) для прохождения файлов, один за другим, чтобы извлечь данные.Каков наиболее эффективный способ извлечения информации из большого количества xml-файлов в python?
- Есть ли более эффективный способ? (простое совпадение текста не работает)
- Нужно ли мне создавать новый ParserCreate() для каждого нового файла (или строки) или я могу повторно использовать его для каждого файла?
- Какие-либо оговорки?
Спасибо!
Не можете найти более подробную информацию о файлах? Они идентичны? Все ли они содержат необходимую информацию? Почему текст не подходит? Пример или два тоже помогут. – muhuk 2008-12-05 20:04:26
Какие еще парсеры вы пробовали? Для очень схожей цели я протестировал `xml.dom.ext.reader` и Python привязки libxml2 и libxml2 был намного быстрее. – bortzmeyer 2008-12-08 12:28:46
@muhuk: соответствие текста бесполезно из-за специфических для XML вещей, например, поиск «foo» с совпадением текста не обнаружит «f o o», даже если это то же самое в XML. – bortzmeyer 2008-12-08 12:29:59