读取Google earth地图输出的kml中的经纬高保存到csv文件

from bs4 import BeautifulSoup
import csv

infile = '1.kml'
outfile = '1.csv'

with open(infile, 'r') as f:
    s = BeautifulSoup(f, 'xml')
    
    with open(outfile, 'wb') as csvfile:
        writer = csv.writer(csvfile)

        for coords in s.find_all('coordinates'):
            
            # Take coordinate string from KML and break it up into [Lat,Lon,Lat,Lon...] to get CSV row
            space_splits = coords.string.split(" ")
	    # print(space_splits)
            row = []
            headers = ['lon','lat']
	    writer.writerow(headers)
            for split in space_splits[0:]:
                # Note: because of the space between <coordinates>" "-80.123, we slice [1:]
                comma_split = split.split(',')
		print(comma_split)
		if(len(split.split(',')) == 3):
		        # lattitude
		        row.append(comma_split[1])		        
		        # longitude
		        row.append(comma_split[0])

	                rows = [(comma_split[0],comma_split[1])]
			writer.writerows(rows)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值