2013-12-12 25 views
1

我一直試圖弄清楚這一點,但我被卡住了。 我想將一個空文件夾添加到現有KML文件中的現有文件夾。 這是我到目前爲止,當我打開文件時,沒有名爲「測試」的新文件夾。使用Python將一個空文件夾附加到KML文件中的現有文件夾

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

你好。我不知道'kml'和''pykml'',但我很想知道:KML目錄和文件是否與Python中常見函數創建的「普通」目錄和文件不同?他們有什麼特別的? – eyquem

回答

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!" 
相關問題