2013-01-08 15 views
0

我正在使用Python 3.3我想編輯一個單線上的1.4Mb的Google地球POI文件(.klm)。我需要隔離開始<placemark>和結束</placemark>的可變長度記錄,檢查每個特定單詞,丟棄沒有它的那些記錄,並保存剩下的內容。從大的一行文件中分離記錄

是否有工具可以做到這一點?

回答

2

KML是一種XML格式。

使用XML解析器解析它(例如xml.etree.ElementTree,包含在標準庫中,或lxml)。

您可以使用專用軟件包(如PyKML)爲您提供包含信息的更高級別的API,但該特定軟件包尚未準備好Python 3。

我確實設法在該項目的文件上運行2to3 tool,所以你的里程可能會有所不同。測試失敗,但失敗看起來很溫和(典型的python 2到3的翻譯差異)。

+0

非常感謝Martijn,我成功了,它只用了6行代碼。 –