ArcGIS Server管理工具之批量发布动态地图服务工具.md
友好阅读链接:(http://swj.me/2015/08/26/batchPublishtools/)
update0918:
- 修复了创建链接文件时而出错的bug
- 修复了在24011的警告已处理的情况下,依然出现提示的异常。
- 将多个脚本文件,压缩成一个脚本文件。压缩后的脚本文件名称为Publishservice.py,使用如下命令执行工具
python Publishservice.py
- 重新创建了一个repo,更改了脚本git 存放的地址,新地址如下:
BathPublishMapServices
==============================================================================
介绍
在日常工作中,经常碰到用户多次诉求需要批量发布服务。esri官方发布方式,只能是通过arcMap连接server去逐个发布。但是其也为开发者提供了批量发布服务两种方式:一种是通过arcpy的脚本,一种是通过其提供的arcgis admin api
本工具使用arcpy的形式实现,并使用cmd 命令行执行。一开始通过tkinter ui的形式进行实现。但是最后发现tkinter太不人性,果断弃之。
环境
- windows
- python 2.7.x
- arcpy 10.1+
实现流程
实现流程即是arcgis for server的发布流程
- 输入GIS服务器的信息
包括GIS服务器的IP,站点管理员用户名和密码,mxd文件所在的文件夹,当集群环境时,指定服务发布的cluster,默认是的default,服务发布到server的目录名,默认是root - 创建server链接文件
在当前脚本执行的目录下,生成一个后缀为.ags 的server链接文件 - 遍历mxd文件
遍历mxd文件夹中的mxd文件,并检查该文件是否存在数据源损坏 - 生成sddraft文件
- 过渡sd文件
- sd文件上传到服务器端
使用
去下面地址下载脚本。将整个BatchPublishMapService 目录下载
运行cmd,cd 到BatchPublishMapService。执行如下脚本. 如果出现python是无效的命令的错误。请配置环境变量
python BatchPublishMapService.py
根据命令行中的提示输入相关的参数。如下图所示:

发布过程的详细信息,以及分析操作的信息输出

在manager中查看批量发布的服务

注意
- 服务名为mxd文件名。如需要指定服务名,请将mxd文件名改为对应的文件名
- 输入的用户名和密码为站点管理员的用户名和密码
- 该程序没有注册数据源的功能,当数据源路径,已经注册,数据不拷贝到服务器上。如果没有注册,数据则默认拷贝到服务器
- 该工具没有打包。本想打包成exe,但是arcpy打包存在问题。
后续更新
由实际反馈和使用情况决定
下载地址
ArcGIS Server管理工具之批量发布动态地图服务工具.md的更多相关文章
- ArcGIS Server 禁用/rest/services路径(禁用服务目录)
ArcGIS Server服务目录(路径如:http://<hostname>:6080/arcgis/rest/services)默认可以不需要登陆直接打开.效果如下图. ArcGIS服 ...
- arcgis for android访问arcgis server上自己制作部署的地图服务
转自:http://gaomw.iteye.com/blog/1110437 本项目的开发环境是eclipse3.5 + ADT11插件+arcgis for andorid 插件 + arcgis ...
- ArcGis Server安装与使用
ArcGis Server安装 下载ArcGisServer 双击Setup.exe,然后一直下一步. 安装完成后,点击完成,弹出如下界面: 选择第三个选项,然选择[.ecp]后缀名的授权文件. 然后 ...
- ArcGIS Enterprise 10.7.1新特性:批量发布服务
ArcGIS Enterprise 10.7.1提供了批量发布GIS服务的功能,能大大简化GIS系统管理员的工作量. 作为发布人员和管理人员,支持向Portal for ArcGIS添加云存储.文件共 ...
- ArcGIS Server学习之问题:ArcGIS Server10.5发布地图显示空白
一.安装ArcGIS10.5 参考ArcGIS 10.5 for Desktop 完整安装教程(含win7/8/10 32/64位+下载地址+亲测可用) | 麻辣GIS 二.安装ArcGIS Serv ...
- 【教程】发布NAServer到ArcGIS Server 10.4上[超详细]
前阵子对ArcGIS API For JavaScript的网络分析有兴趣,但是不知道其数据是如何获取的. 查阅API知道,AJS的网络分析只有三个功能:最短路径(RouteTask).最近设施点(C ...
- JavaWeb和WebGIS学习笔记(六)——使用ArcGIS for Server发布地图服务
系列链接: Java web与web gis学习笔记(一)--Tomcat环境搭建 Java web与web gis学习笔记(二)--百度地图API调用 JavaWeb和WebGIS学习笔记(三)-- ...
- ArcGIS Server发布服务,报错001270
错误001270 这个问题一般是因为数据源文件太大导致. 解决办法: 对于001270的错误,官方帮助中给出了一些可能的原因并提供了相应的解决办法(http://resources.arcgis.c ...
- OpenLayers调用arcgis server发布的地图服务
有两种方式可以调用arcgis server发布的地图服务,一种是rest,一种是wms. 地图的投影为900913,arcgis server为10.0版本,地图服务的空间参考为3857. 与 ...
随机推荐
- FreeRTOS——1
以下转载自安富莱电子: http://forum.armfly.com/forum.php FreeRTOS 的特点 FreeRTOS 的主要特点如下:1. 支持抢占式调度,合作式调度和时间片调度.2 ...
- jar 打包命令详解
原文: https://blog.csdn.net/marryshi/article/details/50751764 本文详细讲述了JAR命令的用法,对于大家学习和总结jar命令的使用有一定的帮助作 ...
- 如何解决redis高并发客户端频繁time out?
解决方案:https://www.zhihu.com/question/24781521
- Elk使用笔记(坑)(2017-02-17更新)
Elk使用笔记(坑)(2017-02-17更新) 作者: admin 时间: 2016-12-07 分类: 工具,数据 主要记录使用过程终于到的一些坑和需要注意的地方,有些坑想不起来了,以后再完善补上 ...
- EasyUI DataGrid合并单元
<table id="tt"></table> $('#tt').datagrid({ title:'Merge Cells', iconC ...
- Emmet快速编写HTML代码
缩写是Emmet工具的核心,这些特殊的表达式通过Emmet解析并转化为结构化的代码块,而语法用CSS选择器,HTML标签和一些Emmet特定的代码生成,所以对于任何一个前端开发人员都可以很容易地掌握和 ...
- 关于Unity中场景视图的使用
1.在任何状态下,按下鼠标中键可以切换到手掌的那个状态,可以移动当前场景 2.在手掌的那个状态,按住鼠标左键是移动场景视图,右键是视角绕着摄像机移动,按住alt+鼠标左键,是绕着指定物体旋转视角 3. ...
- TensorFlow基础笔记(7) 图像风格化效果与性能优化进展
参考 http://hacker.duanshishi.com/?p=1693http://blog.csdn.net/hungryof/article/details/53981959http:// ...
- 31Mybatis_mybatis和spring整合-mapper代理开发
案例结构图:
- web 汇率
http://www.cnblogs.com/beimeng/p/3789940.html 网站虽小,五脏俱全(干货) 前言 最近一个朋友让帮忙做一个汇率换算的网站,用业余时间,到最后总算是实现了 ...