Вы можете выполнять сетевой анализ с помощью модуля arcpy.nax, используя сервисы маршрутизации с автономного сайта ArcGIS Server. Поддерживаются классы механизма расчета (ClosestFacility, LocationAllocation, OriginDestinationCostMatrix, Route, ServiceArea, VehicleRoutingProblem) и функции GetTravelModes и GetWebToolInfo.
Более подробно об автономных сайтах ArcGIS Server
Более подробно о публикации сервисов маршрутизации на сайт ArcGIS Server
Указать автономный сайт ArcGIS Server в коде
При написании кода вместо пути к набору сетевых данных или URL-адреса портала ArcGIS Enterprise используйте словарь Python для указания URL-адресов автономных сайтов ArcGIS Server и сведений для проверки подлинности.
Информационный словарь сервиса маршрутизации включает следующие ключи:
- url — URL REST сервиса маршрутизации. URL-адрес должен включать имя сервиса, но не должен включать имя инструмента в сервисе. Этот ключ является необязательным для функций GetTravelModes и GetWebToolInfo, но требуется для создания экземпляров классов механизма расчета.
- utilityUrl — URL-адрес REST для сервиса утилит, содержащей инструменты, предоставляющие вспомогательную информацию о сервисе маршрутизации. URL-адрес не должен включать название инструмента. Этот ключ обязателен.
- authenticationInfo — Словарь Python, содержащий учетные данные для использования при аутентификации подключения к сервису. Более подробная информация о том, как указать этот словарь, приведена ниже. Этот ключ не требуется для незащищенных сервисов.
Примечание:
URL-адреса сервисов маршрутизации в приведенных ниже примерах предполагают, что автономный сайт ArcGIS Server использует ArcGIS Web Adaptor.
Узнайте, как создавать соответствующие URL-адреса для других конфигураций
Незащищенный сервис
Для незащищенного сервиса ключ authenticationInfo не требуется.
Ниже приведен пример информационного словаря сервиса маршрутизации для незащищенного сервиса.
{
"url": "https://webadaptorhost.domain.com/webadaptorname/rest/services/Routing/NetworkAnalysis/GPServer",
"utilityUrl": "https://webadaptorhost.domain.com/webadaptorname/rest/services/Routing/NetworkAnalysisUtilities/GPServer"
}
Защищенный сервис со встроенной аутентификацией
Для защищенного сервиса со встроенной аутентификацией требуется ключ authenticationInfo, и его значение можно указать несколькими способами.
Внимание:
Файл подключения — это наиболее безопасный способ хранения учетных данных. Другие методы аутентификации менее безопасны.
Аутентификация с использованием имени пользователя и пароля
Для аутентификации с использованием имени пользователя и пароля словарю authenticationInfo требуются ключи username и password. Значения представляют собой простое текстовое имя пользователя и пароль, используемые для подключения к сервису.
Ниже приведен пример информационного словаря сервиса маршрутизации для сервиса со встроенной аутентификацией с использованием имени пользователя и пароля.
{
"url": "https://webadaptorhost.domain.com/webadaptorname/rest/services/Routing/NetworkAnalysis/GPServer",
"utilityUrl": "https://webadaptorhost.domain.com/webadaptorname/rest/services/Routing/NetworkAnalysisUtilities/GPServer",
"authenticationInfo": {
"username": "my_username",
"password": "my_password"
}
}
Аутентификация с помощью файла подключения
Для аутентификации с помощью файла подключения (.ags) словарю authenticationInfo требуется ключ connectionFile.
Узнайте, как создать файл подключения
Ниже приведен пример информационного словаря сервиса маршрутизации для сервиса со встроенной аутентификацией с использованием файла подключения.
{
"url": "https://webadaptorhost.domain.com/webadaptorname/rest/services/Routing/NetworkAnalysis/GPServer",
"utilityUrl": "https://webadaptorhost.domain.com/webadaptorname/rest/services/Routing/NetworkAnalysisUtilities/GPServer",
"authenticationInfo": {
"connectionFile": "C:\\data\\my_connection_file.ags"
}
}