Мне нужно извлечь содержимое нескольких полей из большого XML-файла. В настоящее время я делаю это, хотя сочетание xmlstarlet и скрипт Python (с использованием ElementTree). Идея в том, чтобы обрезать файл XML от бесполезных данных с xmlstarlet, а затем обработать файл меньшего размера с Python (с использованием Python непосредственно на файл не выполнимо - память и процессор были измельчается и некоторые файлы не разбирается). Это в основном работает, но:
- это не эффективно
- это не особенно гибкое
- это довольно некрасиво (наименьшее из моих опасений, но беспокойство, тем не менее, с точки зрения обслуживания)
Я ищу советы о том, как лучше обработать такой случай (количество добытых данных составляет около 5% от исходного файла). Я открыт для чего-либо разумного (конкретный язык, возможно, демпинг XML-файла в БД, а затем извлечь то, что мне нужно, прежде чем демпинговать БД?, ...)