【发布时间】:2021-04-04 07:03:48
【问题描述】:
我有一个包含大量地标和 2 个文件夹的 KML。 如何使用 etree 定位每个地标并将其移动到相应的文件夹中。 例如,代码应查找元素“SimpleData name='id'”并选择“Region 1”,然后将整个 Plaemark 移动到文件夹 Area 1。
之前:
<Folder>
<name>Cluster</name>
<Folder>Area 1</Folder>
<Folder>Area 2</Folder>
<Placemark>
<styleUrl>#falseColor9</styleUrl>
<name>Customer 1</name>
<ExtendedData>
<SimpleData name="id">Region 1</SimpleData>
</ExtendedData>
</Placemark>
<Placemark>
<styleUrl>#falseColor8</styleUrl>
<name>Customer 1</name>
<ExtendedData>
<SimpleData name="id">Region 2</SimpleData>
</ExtendedData>
</Placemark>
</Folder>
之后:
<Folder>
<name>Cluster</name>
<Folder>Area 1</Folder>
<Placemark>
<name>Customer 1</name>
<styleUrl>#falseColor9</styleUrl>
<ExtendedData>
<SimpleData name="id">Region 1</SimpleData>
</ExtendedData>
</Placemark>
<Folder>Area 2</Folder>
<Placemark>
<styleUrl>#falseColor8</styleUrl>
<name>Customer 1</name>
<ExtendedData>
<SimpleData name="id">Region 2</SimpleData>
</ExtendedData>
</Placemark>
</Folder>
任何帮助将不胜感激。
【问题讨论】:
-
不知道用xml.etree能不能做,但是用lxml可以做,如果能用的话。
-
@JackFleeting,你能给我一些想法吗?
标签: python lxml xml.etree parse-tree