はじめに
今回は前回の続きになります。前回はマイマップのデータをCSVに変換するプログラムを紹介しましたが、今回はその逆のCSVをKMLに変換する方法をお伝えしたいと思います。
CSVにしてデータを整理した後に、元に戻す時にご利用くださいませ。
実際のプログラム
今回もPythonを利用します。前回と同じように、Windowsで環境構築方法はググってください。
また今回は「simplekml」を事前にインストールしておきましょう。
pip install simplekml
以下をコピペして出来上がり!!
import csv
import io
from pprint import pprint
import requests
import sys
import simplekml
#リスト形式
csv_file = open("mapData.csv", "r", encoding="utf-8-sig", errors="", newline="" )
f = csv.reader(csv_file, delimiter=",", doublequote=True, lineterminator="\r\n", quotechar='"', skipinitialspace=True)
#ヘッダから必要データのインデックスを抽出
header = next(f)
print(header)
#データ抽出
r_kml = simplekml.Kml()
fol = None
oldFol = ""
for db in f:
if oldFol != db[0]:
fol = r_kml.newfolder(name=db[0])
oldFol = db[0]
print(fol)
p = fol.newpoint(name=db[1], coords=[(db[4], db[3])])
p.description=(db[2])
# ファイルに保存
r_kml.save('newMapData.kml')
r_kml.savekmz('newMapData.kmz')
特に難しいことないので、以上です。
まとめ
いかがだったでしょうか?前回のプログラムとセットでご利用ください。
コメント