7
파이썬에서 lxml.etree
을 사용하여 거대한 xml (> 200MB)을 파싱하고 싶습니다. 나는 XML 파일을로드 etree.parse
을 사용하려고하지만,이 때문에 파일 크기에 작동하지 않습니다 거대한 XML 파일을 위해 python lxml.etree 사용하기
etree.parse('file.xml')Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "lxml.etree.pyx", line 2706, in lxml.etree.parse (src/lxml/lxml.etree.c:49958)
File "parser.pxi", line 1500, in lxml.etree._parseDocument (src/lxml/lxml.etree.c:71797)
File "parser.pxi", line 1529, in lxml.etree._parseDocumentFromURL (src/lxml/lxml.etree.c:72080)
File "parser.pxi", line 1429, in lxml.etree._parseDocFromFile (src/lxml/lxml.etree.c:71175)
File "parser.pxi", line 975, in lxml.etree._BaseParser._parseDocFromFile (src/lxml/lxml.etree.c:68173)
File "parser.pxi", line 539, in lxml.etree._ParserContext._handleParseResultDoc (src/lxml/lxml.etree.c:64257)
File "parser.pxi", line 625, in lxml.etree._handleParseResult (src/lxml/lxml.etree.c:65178)
File "parser.pxi", line 565, in lxml.etree._raiseParseError (src/lxml/lxml.etree.c:64521)
lxml.etree.XMLSyntaxError: Excessive depth in document: 256 use XML_PARSE_HUGE option, line 1276, column 7
내가 XPath 식을 사용하고자으로
, 내가 먼저 파일을 구문 분석해야합니다. XML 파일을 어떻게 파싱 할 수 있습니까?lxml.etree
과 연결된
XML_PARSE_HUGE
은 어떻게 사용합니까?
감사합니다.
가 잘 작동합니다. 고맙습니다. – scdev
이 오류가 발생하는 경우 : "python XMLSyntaxError : 내부 오류 : 거대한 입력 조회",이 솔루션도 작동합니다! – ospider