如何使用Python在KML中添加说明并动态更改地标图标?

问题描述

我使用python的pandas和simplekml模块创建了MS Access dB到KML脚本。脚本a)从表MS Access dB中提取数据; b)将表数据转储到csv文件中; c)然后创建一个kml文件。在表中,我有一列(cpestatus)具有不同的值。我想根据cpestatus列中的变量为地标分配其他图标图像。

请参见下面的工作代码

import pandas as pd
import pyodbc

conn = pyodbc.connect(r'Driver={Microsoft Access Driver (*.mdb,*.accdb)};DBQ=C:\Users\myfiles\Desktop\PythonDev\PremiseCPEData.accdb;')
cursor = conn.cursor()
cursor.execute('select cpeMAC,cpestatus,cpeLAT,cpeLON,FullAddress,Network from PremiseCPE') 

col_headers = [ i[0] for i in cursor.description ]
rows = [ list(i) for i in cursor.fetchall()] 
df = pd.DataFrame(rows,columns=col_headers)

df.to_csv("PremiseCPE.csv",index=False)
   
for row in cursor.fetchall():
    print (row)
  
cursor.close()

import csv
import simplekml

inputfile = csv.reader(open('PremiseCPE.csv','r'))
kml=simplekml.Kml()

for row in inputfile:
  kml.newpoint(name=row[0],coords=[(row[3],row[2])])
kml.description=(row[5]

#这是我需要帮助的地方。 #出于某些奇怪的原因,kml.description仅在最后一个地标上输出一个值,而不是所有地标。

kml.save('PremiseCpestatus.kml')

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...