Try passing recover => 1
to XML::LibXML->new
. It might help.
Docs from XML::LibXML::Parser...
recover
/parser, html, reader/
recover from errors; possible values are 0, 1, and 2
A true value turns on recovery mode which allows one to parse
broken XML or HTML data. The recovery mode allows the parser to
return the successfully parsed portion of the input document. This
is useful for almost well-formed documents, where for example a
closing tag is missing somewhere. Still, XML::LibXML will only
parse until the first fatal (non-recoverable) error occurs,
reporting recoverable parsing errors as warnings. To suppress even
these warnings, use recover=>2.
Note that validation is switched off automatically in recovery
mode.
Schwern
2010-07-08 19:26:49