操作方法

操作方法:使用 ArcGIS API for Python 停止 GIS 服务

Last Published: February 17, 2021

摘要

可以从 ArcGIS Server Manager、ArcCatalog 或者 ArcMap 中的目录窗口来停止 ArcGIS Server 服务。 在某些情况下,可能必须停止多个服务,而手动停止这些服务非常繁琐。 对于联合 ArcGIS Server,可以使用 ArcGIS API for Python 的 stop() 函数来自动执行此过程。

过程

以下步骤将介绍如何使用 stop() 函数来停止 GIS 文件夹中的服务:

  1. 导入所需的库。
from arcgis.gis import GIS import arcgis.gis.admin
  1. 指定 GIS 服务器详细信息。
gis = GIS("<portal url>", "<portal admin username>", "<portal admin password>")
: 要绕过证书验证,添加以下参数“verify_cert=False”。
  1. 检索服务器中的可用文件夹,然后在参数中进行指定。
gis_servers = gis.admin.servers.list()
: 如果列表中的所需服务器文件夹数组位置已知,则可以将脚本修改为: servers = gis.admin.servers.list()[0] 可以对“[0]”进行修改以指定服务在数组中的确切位置。 在该示例中,脚本将获取列表中的第一个服务。
  1. 循环遍历列表,然后在联合环境中停止所有服务器的所有服务。
for server in gis_servers:     for service in server.services.list():         service.stop()
: 要停止特定服务,可以对代码进行以下修改: for server in gis_servers:     for service in server.services.list():         if service.properties.serviceName == "SampleWorldCities":             service.stop() 该代码示例将搜索服务名称为 SampleWorldCities 的服务并将其停止。

以下为完整代码:

from arcgis.gis import GIS import arcgis.gis.admin gis = GIS("https://machine.domain.com/portal", "admin", "password", verify_cert=False) gis_servers = gis.admin.servers.list() #To stop all services for server in gis_servers:     for service in server.services.list():         service.stop() #To stop specific service(s) for server in gis_servers:     for service in server.services.list():         if service.properties.serviceName == "SampleWorldCities":             service.stop()

文章 ID:000019994

从 ArcGIS 专家处获得帮助

联系技术支持部门

下载 Esri 支持应用程序

转至下载选项

相关信息

发现关于本主题的更多内容