我有一個非常大的XML文件,含有40,000個標記元素。 當我使用元素樹來解析這個文件時,它會給內存帶來錯誤。 那麼是否有python中的任何模塊可以讀取數據塊中的xml文件,而無需將整個xml加載到內存中?我如何實現該模塊?如何解析分塊的XML文件
2
A
回答
2
在Python中使用XML的最好的庫可能是lxml
,在這種情況下,您應該對iterparse
/iterwalk
感興趣。
+2
http://stackoverflow.com/questions/7171140/using-python-iterparse-for-large-xml-files這是值得注意的時候使用大的XML文件。 – 2012-02-12 13:58:39
2
這是人們通常使用sax解決的問題。
如果您的大文件基本上是一堆內部聚集的XML文檔和整個XML信封,那麼我會建議使用sax(或純字符串解析)將它分解成一系列單個文檔,然後您可以使用它lxml.etree。
相關問題
- 1. 解析非XML文件中的XML塊
- 2. 如何解析XML文件
- 3. 如何解析XML文件?
- 4. 如何解析XML文件
- 5. 如何解析XML文件
- 6. 如何解析XML文件
- 7. 解析XML文件etree模塊
- 8. 解析XML文件的特定部分
- 9. 解析XML文件的一部分
- 10. 如何解析RapidXML中的XML文件
- 11. 如何解析SSIS中的XML文件?
- 12. 如何解析python中的xml文件?
- 13. XML文件解析?
- 14. 解析XML文件
- 15. 解析XML文件
- 16. 解析XML文件...
- 17. 解析XML文件
- 18. 解析xml文件
- 19. 解析XML文件
- 20. 解析XML文件
- 21. 解析XML文件
- 22. 解析XML CDATA塊
- 23. 使用SAX解析器,如何解析java中的xml文件
- 24. 我如何解析XML文件與jquery
- 25. 如何解析這個XML文件?
- 26. 如何從R.xml文件夾解析XML?
- 27. 如何在PHP中解析XML文件
- 28. 如何在java中解析xml文件?
- 29. 如何在PHP中解析XML文件?
- 30. 如何解析這個XML文件?
我不是pythonist,但是查找用於解析XML的SAX(不是DOM)方法。 – 2012-02-12 13:44:13
只要問題不需要隨機訪問標籤,SAX就是完美的。如果情況並非如此,如果有辦法在內存中構建更緊湊的數據表示,您仍然可以使用它。 – 2012-02-12 13:50:38
lxml是最好的..建議n使用IBM以及:) – codersofthedark 2012-03-14 05:53:37