Удалите пробелы в теге xml, используя ElementTree в Python 2.6
Я хочу удалить пробелы внутри тегов Enum. На самом деле это новые строки (^$). Я получил их после удаления дочерних узлов внутри тегов Enum с помощью ElemntTree.
<Enum name="Coupon Type" group="" defaultVal=""> </Enum>
<Enum name="DayCountConvention" group="" defaultVal=""> </Enum>
1 ответ
Решение
Пройдите элементы и установите text
приписывать None
:
from xml.etree import ElementTree as etree
SOURCE = '''\
<root>
<Enum name="Coupon Type" group="" defaultVal=""> </Enum>
<Enum name="DayCountConvention" group="" defaultVal=""> </Enum>
</root>
'''
def main():
root_node = etree.fromstring(SOURCE)
for enum_node in root_node.findall('Enum'):
enum_node.text = None
print etree.tostring(root_node)
if __name__ == '__main__':
main()
Выход:
<root>
<Enum defaultVal="" group="" name="Coupon Type" />
<Enum defaultVal="" group="" name="DayCountConvention" />
</root>
Если есть элементы, все еще содержащие контент, вы можете проверить это и просто установить text
пустых элементов.