DeleteMapService (arcpy.mapping)
Resumen
This method has been deprecated at ArcGIS 10.1 and will return a runtime error. Please consult the ArcGIS documentation for the usage of the new ArcGIS for Server Administrator API.
Debate
This method has been deprecated at ArcGIS 10.1 and will return a runtime error.
ArcGIS for Server 10.1 has a new architecture, which may require you to adjust how you work with the server. See the following help topics for more information: What's new in ArcGIS 10.1 for Server, What to expect when migrating to ArcGIS 10.1 for Server and Migration to ArcGIS 10.1 for Server.
You can delete Map Services using the ArcGIS for Server Administrator API which is available through the ArcGIS Site Directory. The default URL of the ArcGIS for Server Site Directory is as follows:
http://<server name>:6080/arcgis/admin
The URL of the Site Directory may vary if you have configured ArcGIS for Server Web Adaptor to work with your site. For example, the inclusion of the port number, 6080, may not be required. Check your web adaptor configuration to obtain the correct URL.
An example of using Python and the ArcGIS for Server Administrator API to delete Map Services is below:
import json
import urllib
import urllib2
def gentoken(url, username, password, expiration=60):
query_dict = {'username': username,
'password': password,
'expiration': str(expiration),
'client': 'requestip'}
query_string = urllib.urlencode(query_dict)
return json.loads(urllib.urlopen(url + "?f=json", query_string).read())['token']
def deleteservice(server, servicename, username, password, token=None, port=6080):
if token is None:
token_url = "http://{}:{}/arcgis/admin/generateToken".format(server, port)
token = gentoken(token_url, username, password)
delete_service_url = "http://{}:{}/arcgis/admin/services/{}/delete?token={}".format(server, port, servicename, token)
urllib2.urlopen(delete_service_url, ' ').read() # The ' ' forces POST
# if you need a token, execute this line:
deleteservice("<server>", "<service>.MapServer", "<admin username>", "<admin password>")
# if you already have a token, execute this line:
deleteservice("<server>", "<service>.MapServer", None, None, token='<token string>')
Sintaxis
Parámetro | Explicación | Tipo de datos |
connection_url_or_name |
A string that represents the URL of the ArcGIS for Server for which you want to delete a service. | String |
server |
A string that represents the ArcGIS for Server host name. | String |
service_name |
A string that represents the name of the service. This is the name people will see and use to identify the service. The name can only contain alphanumeric characters and underscores. No spaces or special characters are allowed. The name cannot be more than 120 characters in length. | String |
folder_name |
A string that represents a folder name. | String |
connection_username |
A string that represents a user name used to connect to ArcGIS for Server. This variable is only necessary when connecting to a UNIX/Linux ArcGIS for Server. (El valor predeterminado es None) | String |
connection_password |
A string that represents a password used to connect to the ArcGIS for Server. This variable is only necessary when connecting to a UNIX/Linux ArcGIS for Server. (El valor predeterminado es None) | String |
connection_domain |
A string that represents a domain name used to connect to the ArcGIS for Server. This variable is only necessary when connecting to a UNIX/Linux ArcGIS for Server. (El valor predeterminado es None) | String |