如何解决用 python3 替换 KML 文件中的坐标
我需要替换 KML 文件中的所有坐标:
<coordinates>
24.6206,58.0265,10
24.6218,58.0245,260
24.6234,58.0221,510
24.6257,58.0191,760
</coordinates>
我以这种方式尝试过,但最后root为空:
from pykml import parser
import requests
kmlFile = requests.get('https://predict.habhub.org/kml.PHP',params=ploadsKml)
root = parser.fromstring(bytes(kmlFile.text,encoding='utf8'))
coordinates_before = root.Document.Placemark.Linestring.coordinates
string_updated_coordinates="'\\n34.4534,56.5675\\n34.4786,57.1274\\n'"
updated_coordinates = literal_eval(string_updated_coordinates)
coordinates_before._setText(updated_coordinates)
print (root)
但 root 是空的。
这里是完整的kml文件:
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
<name>Flight Path</name>
<description><![CDATA[Flight data be3aa40 <br>Site: 58.02651,24.62057 at 14:5 on 26/12/2020]]></description>
<Placemark>
<name>Path</name>
<description>Test v.78</description>
<styleUrl>#yellowpoly</styleUrl>
<Linestring>
<extrude>1</extrude>
<tesselate>1</tesselate>
<altitudeMode>absolute</altitudeMode>
<coordinates>
24.6206,760
</coordinates>
</Linestring></Placemark>
<Placemark>
<name>Balloon Launch</name>
<description>GPS TEST 58.0265,24.6206 </description>
<Point><coordinates>32.6206,78.0265,0</coordinates></Point>
</Placemark>
</Document></kml>
只需要替换这 4 个坐标,将其余信息保留在 kml 文件中。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。