arcpy实现 kml批量转出为shp

分两步走:首先转出到layer

import arcpy, os
arcpy.env.workspace = r"D:\sq\ddx"
outLocation = "D:\sq\ddx"
MasterGDB = 'sq.gdb'
MasterGDBLocation = os.path.join(outLocation, MasterGDB)
arcpy.CreateFileGDB_management(outLocation, MasterGDB)
for kmz in arcpy.ListFiles('*.KM*'):
    arcpy.KMLToLayer_conversion(kmz, MasterGDBLocation)

其次将所有layer转出到shp

import arcpy, os
arcpy.env.workspace = r"D:\sq\dbx"
outGDB=r"D:\kml2.gdb"
wks = arcpy.ListWorkspaces('*', 'FileGDB')
count=0
for fgdb in wks:
    arcpy.env.workspace = fgdb
    featureClasses = arcpy.ListFeatureClasses('*', '', 'Placemarks')
    count+=1
    for fc in featureClasses:
        print fc
        arcpy.CopyFeatures_management(fc, outGDB+"\\s"+str(count)+fc)

最后又需要将所有shp合并

import arcpy
from arcpy import env
sourceGDB=r"d:\kml2.gdb"
env.workspace=sourceGDB
fcs=arcpy.ListFeatureClasses()
lspoly=[]
for fc in fcs:
                lspoly.append(fc)
arcpy.Merge_management(lspoly, "bjm")
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值