import arcpy, os, glob
# Set Workspace
base_Folder = r"N:\BASE_DATA\CANVEC\1_to_50k"
arcpy.env.Workspace = base_Folder
arcpy.env.OverwriteOutput = True
# User input for NTS mapsheet name. This variable is also used to search for the correct mapsheet.
map_No = arcpy.GetParameterAsText(0)
# Canvec data is stored in folders, broken down by 1:50000 mapsheet number (eg: 031, 001, 045, etc).
# This variable extracts the folder name to be used when finding the correct folder
folder_Name = map_No[0:3]
# print folder_Name
#Established the correct folder to look in when loading the specified layers.
search_Folder = base_Folder + "\\" + folder_Name + "\\" + map_No
print search_Folder
##mxd = arcpy.mapping.MapDocument("CURRENT")
##dataFrame = arcpy.mapping.ListDataFrames(mxd, "Layers")[0]
shp_List = arcpy.ListFiles("*.shp")
for layer in shp_List:
mxd = arcpy.mapping.MapDocument("CURRENT")
dataFrame = arcpy.mapping.ListDataFrames(mxd, "Layers")[0]
layer_Path = search_Folder + "\\" + layer
addLayer = arcpy.mapping.Layer(layer_Path)
arcpy.mapping.AddLayer(dataFrame, addLayer, "BOTTOM")
arcpy.RefreshTOC()
arcpy.RefreshActiveView()
del addLayer, layer_Path, mxdTraceback (most recent call last): File "N:/DOCUMENTATION/PYTHON/Canvec_Symbolization/test2.py", line 44, in <module> for layer in arcpy.ListFiles():
import arcpy # Set Workspace base_Folder = r"N:\BASE_DATA\CANVEC\1_to_50k" # User input for NTS mapsheet name. This variable is also used to search for the correct mapsheet. map_No = arcpy.GetParameterAsText(0) # Canvec data is stored in folders, broken down by 1:50000 mapsheet number (eg: 031, 001, 045, etc). # This variable extracts the folder name to be used when finding the correct folder folder_Name = map_No[0:3] # print folder_Name #Established the correct folder to look in when loading the specified layers. search_Folder = base_Folder + "\\" + folder_Name + "\\" + map_No arcpy.env.Workspace = search_Folder print search_Folder # list files in workspace fileList = arcpy.ListFiles() for file in fileList: #...
basefolder\ 031\ 031L1\ --map1.shp --map2.shp 031L33\ --map3.shp --map4.shp
import arcpy, os, glob
# Set Workspace
base_Folder = r"e:\test"
arcpy.env.Workspace = base_Folder
arcpy.env.OverwriteOutput = True
# User input for NTS mapsheet name. This variable is also used to search for the correct mapsheet.
map_No = arcpy.GetParameterAsText(0)
#map_No = "031L33"
arcpy.AddMessage("Map Number: " + map_No)
# Canvec data is stored in folders, broken down by 1:50000 mapsheet number (eg: 031, 001, 045, etc).
# This variable extracts the folder name to be used when finding the correct folder
folder_Name = map_No[0:3]
arcpy.AddMessage("Folder Name: " + folder_Name)
# print folder_Name
#Established the correct folder to look in when loading the specified layers.
search_Folder = base_Folder + "\\" + folder_Name + "\\" + map_No
arcpy.AddMessage("Search Folder: " + search_Folder)
print search_Folder
##mxd = arcpy.mapping.MapDocument("CURRENT")
##dataFrame = arcpy.mapping.ListDataFrames(mxd, "Layers")[0]
shp_List = glob.glob(str(search_Folder) + "\*.shp")
arcpy.AddMessage("Shp List: ")
for lyr in shp_List:
arcpy.AddMessage(lyr)
print shp_List
for layer in shp_List:
mxd = arcpy.mapping.MapDocument("CURRENT")
dataFrame = arcpy.mapping.ListDataFrames(mxd, "Layers")[0]
addLayer = arcpy.mapping.Layer(layer)
arcpy.mapping.AddLayer(dataFrame, addLayer, "BOTTOM")
arcpy.RefreshTOC()
arcpy.RefreshActiveView()
del addLayer, mxd
import arcpy, os, glob
# Set Workspace
base_Folder = r"c:\test"
arcpy.env.Workspace = base_Folder
arcpy.env.OverwriteOutput = True
# User input for NTS mapsheet name. This variable is also used to search for the correct mapsheet.
map_No = arcpy.GetParameterAsText(0)
arcpy.AddMessage("Map Number: " + map_No)
# Canvec data is stored in folders, broken down by 1:50000 mapsheet number (eg: 031, 001, 045, etc).
# This variable extracts the folder name to be used when finding the correct folder
folder_Name = map_No[1000:9999]
arcpy.AddMessage("Folder Name: " + folder_Name)
# print folder_Name
#Established the correct folder to look in when loading the specified layers.
search_Folder = base_Folder + "\\" + folder_Name + "\\" + map_No
arcpy.AddMessage("Search Folder: " + search_Folder)
print search_Folder
##mxd = arcpy.mapping.MapDocument("CURRENT")
##dataFrame = arcpy.mapping.ListDataFrames(mxd, "Layers")[0]
shp_List = glob.glob(str(search_Folder) + "zones.shp")
arcpy.AddMessage("Shp List: ")
for lyr in shp_List:
arcpy.AddMessage(lyr)
print shp_List
for layer in shp_List:
mxd = arcpy.mapping.MapDocument("CURRENT")
dataFrame = arcpy.mapping.ListDataFrames(mxd, "Layers")[0]
addLayer = arcpy.mapping.Layer(layer)
arcpy.mapping.AddLayer(dataFrame, addLayer, "BOTTOM")
arcpy.RefreshTOC()
arcpy.RefreshActiveView()
del addLayer, mxd