Hi, I am looking for help correcting my python script. I am having trouble with the select layer by location from a buffer feature layer. Thanks!
Check the help page. Look at the example. Note the quotes, particularly around the overlap type.
Also, please review how to post code blocks on GeoNet so we don't have to download a potentially harmful Python script. Here is the uncorrected script, for future reference:
import arcpy, os arcpy.env.workspace = "F:\\GEO443\\Final" arcpy.env.overwriteOutput = True brown = "F:\\GEO443\\Final\\BRO_ADDS\\BRO_ADDS.shp" green = "F:\\GEO443\\Final\\GRE_ADDS\\GRE_ADDS.shp" hancock = "F:\\GEO443\\Final\\HAN_ADDS\\HAN_ADDS.shp" logan = "F:\\GEO443\\Final\\LOG_ADDS\\LOG_ADDS.shp" muskingum = "F:\\GEO443\\Final\\MUS_ADDS\\MUS_ADDS.shp" try: ## CreateFileGDB_management (out_folder_path, out_name, {out_version}) ## execute create file .gdb #arcpy.CreateFileGDB_management("F:\\GEO443\\Final","county.gdb") print "file GDB created" ##FeatureClassToGeodatabase_conversion (Input_Features, Output_Geodatabase) #arcpy.FeatureClassToGeodatabase_conversion([brown,green,hancock,logan,muskingum],"F:\\GEO443\\Final\\county.gdb") print "shape files moved to gdb" arcpy.env.overwriteOutput = True arcpy.env.workspace = "F:\\GEO443\\Final\\county.gdb" kroger_selection = ('"COMMENT" = \'KROGER\'') fcs = arcpy.ListFeatureClasses() for fc in fcs: print fc print "" fc_kroger = fc + "kroger" fc_lyr = arcpy.MakeFeatureLayer_management(fc,fc_kroger) print "Feature layer created" ## SelectLayerByAttribute_management (in_layer_or_view, {selection_type}, {where_clause}) arcpy.SelectLayerByAttribute_management(fc_lyr,"NEW_SELECTION",kroger_selection) arcpy.CopyFeatures_management(fc_lyr,fc + "krogerselection") print "Kroger Selected" ## Buffer_analysis (in_features, out_feature_class, buffer_distance_or_field, {line_side}, {line_end_type}, {dissolve_option}, {dissolve_field}) fcs = arcpy.ListFeatureClasses("*krogerselection") for fc in fcs: print fc arcpy.Buffer_analysis(fc, fc + "Buff", "1 Mile") print "Features Copied" print "Buffer Created" ## SelectLayerByLocation_management (in_layer, {overlap_type}, {select_features}, {search_distance}, {selection_type}) fcs = arcpy.ListFeatureClasses("*krogerselection") for fc in fcs: print fc fc_location = fc + "location" fc_Addr = arcpy.MakeFeatureLayer_management(fc, fc_location) print "location fc created" arcpy.SelectLayerByLocation_management(fc_Addr, WITHIN, fc + "Buff") arcpy.CopyFeatures_management(fc_Addr, fc + "addresses") print "addresses selected" except: print arcpy.GetMessages(2)
Apparently, this is a hard assignment.