Сообщение [Python] Проблема с xml.etree.cElementTree от 28.09.2017 7:00
Изменено 28.09.2017 7:51 SmaLL75
[Python] Проблема с xml.etree.cElementTree
Здравствуйте!
Версии Python:
Python 2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:53:40) [MSC v.1500 64 bit (AMD64)] on win32
Python 3.6.2 (v3.6.2:5fd33b5, Jul 8 2017, 04:57:36) [MSC v.1900 64 bit (AMD64)] on win32
Python 3.6.2 (default, Jul 20 2017, 08:43:29) [GCC 4.9.4] on linux
Обрабатывается большой xml-файл ~100мб (это не предел)
Используется функция последовательного разбора xml из пакета xml.etree.cElementTree
Проблема в том, что при использовании iterparse пропускаются данные.
Это баг или фича? Можно ли решить или обойти проблему?
Версии Python:
Python 2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:53:40) [MSC v.1500 64 bit (AMD64)] on win32
Python 3.6.2 (v3.6.2:5fd33b5, Jul 8 2017, 04:57:36) [MSC v.1900 64 bit (AMD64)] on win32
Python 3.6.2 (default, Jul 20 2017, 08:43:29) [GCC 4.9.4] on linux
Обрабатывается большой xml-файл ~100мб (это не предел)
Используется функция последовательного разбора xml из пакета xml.etree.cElementTree
xml.etree.cElementTree.iterparse(xml, events=('start', 'end'))Проблема в том, что при использовании iterparse пропускаются данные.
Это баг или фича? Можно ли решить или обойти проблему?
| пример xml | |
| <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <pivotCacheRecords xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" count="236834"> <r> <s v="3632025024"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <n v="1"/> <x v="0"/> <x v="0"/> <x v="0"/> <s v="177230"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <d v="2014-10-17T00:00:00"/> <n v="1051"/> <x v="0"/> <x v="0"/> </r> <r> <s v="3632369876"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="1"/> <x v="1"/> <x v="1"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <n v="1"/> <x v="0"/> <x v="1"/> <x v="0"/> <s v="214239"/> <x v="0"/> <x v="1"/> <x v="0"/> <x v="1"/> <x v="1"/> <x v="0"/> <x v="0"/> <x v="0"/> <d v="2016-07-22T00:00:00"/> <n v="407"/> <x v="1"/> <x v="0"/> </r> | |
[Python] Проблема с xml.etree.cElementTree
Здравствуйте!
Версии Python:
Python 2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:53:40) [MSC v.1500 64 bit (AMD64)] on win32
Python 3.6.2 (v3.6.2:5fd33b5, Jul 8 2017, 04:57:36) [MSC v.1900 64 bit (AMD64)] on win32
Python 3.6.2 (default, Jul 20 2017, 08:43:29) [GCC 4.9.4] on linux
Обрабатывается большой xml-файл ~100мб (это не предел)
Используется функция последовательного разбора xml из пакета xml.etree.cElementTree
Проблема в том, что при использовании iterparse пропускаются данные.
Это баг или фича? Можно ли решить или обойти проблему?
Версии Python:
Python 2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:53:40) [MSC v.1500 64 bit (AMD64)] on win32
Python 3.6.2 (v3.6.2:5fd33b5, Jul 8 2017, 04:57:36) [MSC v.1900 64 bit (AMD64)] on win32
Python 3.6.2 (default, Jul 20 2017, 08:43:29) [GCC 4.9.4] on linux
Обрабатывается большой xml-файл ~100мб (это не предел)
Используется функция последовательного разбора xml из пакета xml.etree.cElementTree
for event, elem in ET.iterparse(xml, events=('start', 'end')):
if event is "start":
....Проблема в том, что при использовании iterparse пропускаются данные.
Это баг или фича? Можно ли решить или обойти проблему?
| пример xml | |
| <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <pivotCacheRecords xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" count="236834"> <r> <s v="3632025024"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <n v="1"/> <x v="0"/> <x v="0"/> <x v="0"/> <s v="177230"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <d v="2014-10-17T00:00:00"/> <n v="1051"/> <x v="0"/> <x v="0"/> </r> <r> <s v="3632369876"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="1"/> <x v="1"/> <x v="1"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <x v="0"/> <n v="1"/> <x v="0"/> <x v="1"/> <x v="0"/> <s v="214239"/> <x v="0"/> <x v="1"/> <x v="0"/> <x v="1"/> <x v="1"/> <x v="0"/> <x v="0"/> <x v="0"/> <d v="2016-07-22T00:00:00"/> <n v="407"/> <x v="1"/> <x v="0"/> </r> | |