I'm a beginner to Python and am trying to figure out how I can access several mxds in a folder. For example, when I want to use the
AnalyzeforMSD function in ArcGIS:
import arcpy mxd = arcpy.mapping.MapDocument(r"C:\Project\ReadyForMSD.mxd") analysis = arcpy.mapping.AnalyzeForMSD(mxd)
How can I define a folder with mxds as a path, e.g. C:\Projects\data, and analyze all the mxds in it?
import os, arcpy directory = r"C:\Project" for root, dirs, files in os.walk(directory): for myFile in files: fileExt = os.path.splitext(myFile) if (fileExt == ".mxd"): fullPath = os.path.join(root, myFile) print myFile myMap = arcpy.mapping.MapDocument(fullPath) analysis = arcpy.mapping.AnalyzeForMSD(myMap) for key in ('messages', 'warnings', 'errors'): print "----" + key.upper() + "---" vars = analysis[key] for ((message, code), layerlist) in vars.iteritems(): print " ", message, " (CODE %i)" % code print " applies to:", for layer in layerlist: print layer.name, print