Ответ 1
Я думаю, вы используете довольно хороший. XML:: LibXML, Matt Sergeant и Christian Glahn Perl интерфейс к Даниэлю Веллиарду libxml2 является одним из самых быстрых XML-парсеров, о которых я знаю.
Я пробовал многие из Perl XML Parsers. Меня очень интересовал сабботронный парсер, но это больно установить на ящик Windows. В настоящее время я начал использовать XML:: LibXML и XML:: LibXSLT оба из которых, похоже, делают все, что мне нужно.
Они, похоже, тоже вполне стандартны. Есть ли лучшие XML-парсеры для использования, чем это?
Я думаю, вы используете довольно хороший. XML:: LibXML, Matt Sergeant и Christian Glahn Perl интерфейс к Даниэлю Веллиарду libxml2 является одним из самых быстрых XML-парсеров, о которых я знаю.
Это действительно зависит от ваших потребностей, как говорили люди. Чтобы проанализировать XML файлы размером ~ 100 Мб (аннотации генов от TAIR, 1 файл на хромосому), я использовал mirod XML:: Twig, который позволяет вам устанавливать обратные вызовы для анализа интересующих вас элементов, представляя каждый поддоку в виде дерева XML:: Simple. Он сочетает в себе преимущества синтаксического анализатора SAX (сканирование файла как потока) с помощью парсера DOM (более легко работая с интересными фрагментами).
Если вам нужна скорость, мощность или функции, XML:: LibXML - это путь. Если вы после простоты использования, XML:: Simple является жизнеспособной альтернативой.
По моему опыту XML:: Simple лучше всего подходит для быстрого и грязного анализа XML. Мы используем его для анализа данных от третьих лиц, которые не всегда соответствуют стандарту XML. XML:: Simple генерирует информативные ошибки и ускоряет работу.
(На самом деле это не ответ, но комментарий - однако я не могу комментировать...)
XML:: Simple упоминается здесь.
(Я знаю это несколько лет назад, но сегодня это появилось в Google...)
Однако, этот сайт (http://metacpan.org/pod/XML::Simple) теперь говорит:
СОСТОЯНИЕ ЭТОГО МОДУЛЯ
Использование этого модуля в новом коде не рекомендуется. Доступны и другие модули, которые обеспечивают более простые и последовательные интерфейсы. В частности, настоятельно рекомендуется использовать XML:: LibXML.
Основными проблемами с этим модулем являются большое количество опций и произвольные способы взаимодействия этих параметров - часто с неожиданными результатами.
Патчи с исправлениями ошибок и исправлениями документации приветствуются, но новые возможности вряд ли будут добавлены.
Вы также можете посмотреть XML:: Liberal, который использует LibXML внизу.
Я думаю, вы должны дать XML:: MyXML попробовать. Он очень прост в использовании.