Python 最初仅支持存储在 ArcGIS 系统工具箱中的工具,如“数据管理工具”、“转换工具”和“分析工具”工具箱。 由个人、第三方或组织创建并存储在自定义工具箱中的自定义工具可以像任何系统工具一样在 Python 窗口中访问,方法是将自定义工具箱导入到 ArcPy 站点包中。
在以下示例中,ImportToolbox 函数用于允许在 Python 中访问自定义工具箱中包含的工具。 导入工具箱后,可以通过以下形式访问自定义工具:arcpy.<toolname>_<alias>。
>>> arcpy.ImportToolbox("c:/mytools/geometrytools.tbx")
>>> arcpy.CreateRegularPolygons_geometry(通过 ArcPy 站点包访问某个工具时,该工具所在的工具箱的别名是必填后缀 (arcpy.<toolname>_<alias>)。 由于 ArcPy 要根据工具箱别名来访问和运行正确的工具,因此,当导入自定义工具箱时别名极其重要。 一种很好的做法是,始终定义自定义工具箱别名。 不过,如果未定义工具箱别名,则可设置一个临时别名作为 ImportToolbox 函数的第二个参数。
>>> arcpy.ImportToolbox("c:/mytools/geometrytools.tbx", "mytools")
>>> arcpy.CreateRegularPolygons_mytools(服务器工具箱
也可以使用 ImportToolbox 将地理处理服务添加到脚本环境。 无论是从本地服务器还是 Internet 服务器添加地理处理服务,服务器和工具箱名称均以分号分隔。
添加地理处理服务的示例语法
# Import a geoprocessing service
import arcpy
# To add a toolbox from a Internet server, provide the url and toolbox name
# delimited by a semi-colon
arcpy.ImportToolbox("http://lab13/arcgis/services;BufferByVal")添加局部地理处理服务的示例语法
# Import a local geoprocessing service
import arcpy
# To add a toolbox from a local server, provide the server and toolbox name
# delimited by a semi-colon
arcpy.ImportToolbox("lab13;BufferByVal")