Thanks Darren! This worked on my first try for me. WOOO!
import arcpy, csv mxd = arcpy.mapping.MapDocument("YOUR MXD HERE") layers = arcpy.mapping.ListLayers(mxd) filepath = "NEW CSV FILE PATH HERE" writer = csv.writer(file(filepath, 'w')) for layer in layers: if layer.supports("dataSource"): writer.writerow(layer.dataSource) del writer
import arcpy, csv mxd = arcpy.mapping.MapDocument("YOUR MXD HERE") layers = arcpy.mapping.ListLayers(mxd) filepath = "NEW CSV FILE PATH HERE" writer = csv.writer(file(filepath, 'wb')) sourcelist = [] for layer in layers: if layer.supports("dataSource"): sourcelist.append(layer.dataSource) writer.writerow(sourcelist) del writer
Using Darren's code above, simply write each layer.dataSource to a text file for printing like so: import arcpy doc = open("doc.txt", "a") mxd = arcpy.mapping.MapDocument("MXD PATH HERE") layers = arcpy.mapping.ListLayers(mxd) for layer in layers: if layer.supports("dataSource"): # some layers might not support the property "dataSource" print layer.dataSource doc.write(layer.dataSource+"\n")
import arcpy doc = open("doc.txt", "a") mxd = arcpy.mapping.MapDocument("MXD PATH HERE") layers = arcpy.mapping.ListLayers(mxd) for layer in layers: if layer.supports("dataSource"): # some layers might not support the property "dataSource" print layer.dataSource doc.write(layer.dataSource+"\n")
import arcpy mxd = arcpy.mapping.MapDocument("MXD PATH HERE") layers = arcpy.mapping.ListLayers(mxd) for layer in layers: if layer.supports("dataSource"): # some layers might not support the property "dataSource" print layer.dataSource
Aangemelde leden kunnen berichten plaatsen, updates volgen en meer. Nieuw hier? Registreer een gratis account.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.