我一直试图自己解决这个问题但是我被困住了。 我想将空文件夹添加到现有KML文件中的现有文件夹中。 这就是我到目前为止,当我打开文件时,没有名为“test”的新文件夹。
import pykml
from pykml.factory import KML_ElementMaker as KML
from pykml import parser
x = KML.Folder(KML.name("test"))
with open("Scratch Paper.kml") as f:
doc = parser.parse(f).getroot()
a = doc.Document.Folder.Folder[0]
a.append(x)
f.close()
答案 0 :(得分:1)
所以,事实证明比我想象的容易得多...... 我还在尝试学习好的练习,但是在读取模式下打开文件,复制我想要的数据,然后在写入模式下重新打开似乎可以实现我想要的效果。
如果有其他人看到更好的方法,请告诉我! 谢谢!
import lxml
from lxml import etree
import pykml
from pykml.factory import KML_ElementMaker as KML
from pykml import parser
x = KML.Folder(KML.name("meow"))
with open("Scratch Paper.kml", "r+") as f:
doc = parser.parse(f).getroot()
print doc.Document.Folder.Folder[3].name
a = doc.Document.Folder[0]
a.append(x)
finished = (etree.tostring(doc, pretty_print=True))
with open("Scratch Paper.kml", "w+") as f:
f.write(finished)
print "Done!"