Есть ли способ "пропустить" строку с использованием синтаксического анализатора SAX XML?
У меня есть неподтверждающий XML-документ, который представляет собой объединение действительных XML-документов, поэтому для каждого документа появляется <?xml ...?>
. Также обратите внимание, что мне нужно использовать синтаксический анализатор SAX, поскольку входные документы огромны.
Я попытался создать класс «пользовательский поток» в качестве фидера для анализатора, но быстро понял, что SAX использует метод read
и, таким образом, считывает данные в «байтовых массивах», тем самым взрывая сложность этого проекта.
спасибо!
ОБНОВЛЕНИЕ: Я знаю, что есть способ обойти это использование csplit
, но я стремлюсь к решению на основе Python, если это вообще возможно в разумных пределах.
Обновление 2: Возможно, мне следовало бы сказать "переход к следующему документу", это имело бы больше смысла. Во всяком случае, это то, что мне нужно: способ парсинга нескольких документов из одного входного потока.