在 kml 文件中查找地标
Find Placemarks in kml file
我想在一个 kml 文件中找到所有的地标:
from lxml import etree
doc = etree.parse(filename)
for elem in doc.findall('<Placemark>'):
print(elem.find("<Placemark>").text)
这不起作用,即它找不到任何东西,我认为是因为每个地标都是独一无二的,因为每个地标都有自己的 ID,例如:
<Placemark id="ID_09795">
<Placemark id="ID_15356">
<Placemark id="ID_64532">
我该怎么做?
编辑:根据@ScottHunter 评论更改了代码:
placemark_list = doc.findall("Placemark")
print ("length:" + str(len(placemark_list)))
for placemark in placemark_list:
print(placemark.text)
长度为 0
如果没有看到完整的文件,很难判断,但试试这样的东西
placemark_list = doc.xpath("//*[local-name()='Placemark']")
print(len(placemark_list))
看看它是否有效。
我想在一个 kml 文件中找到所有的地标:
from lxml import etree
doc = etree.parse(filename)
for elem in doc.findall('<Placemark>'):
print(elem.find("<Placemark>").text)
这不起作用,即它找不到任何东西,我认为是因为每个地标都是独一无二的,因为每个地标都有自己的 ID,例如:
<Placemark id="ID_09795">
<Placemark id="ID_15356">
<Placemark id="ID_64532">
我该怎么做?
编辑:根据@ScottHunter 评论更改了代码:
placemark_list = doc.findall("Placemark")
print ("length:" + str(len(placemark_list)))
for placemark in placemark_list:
print(placemark.text)
长度为 0
如果没有看到完整的文件,很难判断,但试试这样的东西
placemark_list = doc.xpath("//*[local-name()='Placemark']")
print(len(placemark_list))
看看它是否有效。