Я не пробовал, но это возможно с помощью NetworkLinkControl в KML. Для этого вам понадобится в общей сложности четыре файла KML. В вашем сценарии первые три могут быть жестко закодированы, а четвертый может сгенерировать из вашего скрипта python.
- нагрузки tour.kml - это NetworkLink файл, который загружает tour.kml
- tour.kml - это файл, содержащий исходные данные тура KML
- обновление-tour.kml - это NetworkLink файл, который загружает обновленный TOUR New-data.kml
- новый-data.kml - это NetworkLinkControl, который обновляет оригинальный tour.kml
Вот четыре файла, я пропустил декларацию KML и корневой элемент для краткости ...
нагрузки tour.kml
<NetworkLink>
<name>load</name>
<Link>
<href>tour.kml</href>
</Link>
</NetworkLink>
tour.kml
<Document>
<gx:Tour id="myTour">
<name>tour</name>
<gx:Playlist id="myPlaylist">
<!-- existing tour data goes here -->
</gx:Playlist>
</gx:Tour>
</Document>
обновление-tour.kml
<NetworkLink>
<name>update</name>
<Link>
<href>new-data.kml</href>
</Link>
</NetworkLink>
нового data.kml
<NetworkLinkControl>
<Update>
<targetHref>tour.kml</targetHref>
<Change>
<gx:Playlist id="myPlaylist">
<!-- new tour data goes here -->
</gx:Playlist>
</Change>
</Update>
</NetworkLinkControl>
Вот документация по NetworkLinkControl и его использование в обновлении данных.
https://developers.google.com/kml/documentation/kmlreference#networklinkcontrol
https://developers.google.com/kml/documentation/updates