¿Hay alguna manera con ArcPy para identificar la versión de un documento de mapa (MXD)? Estoy trabajando en una solución para inventariar nuestros MXD y me gustaría saber si un documento es 8.1, 9.2, 10.0, etc.
Actualmente estoy usando ArcGIS 10.0, pero si hay una actualización en 10.1 que no existe en 10.0, agradecería escuchar eso también.
Veo que hay una pregunta anterior de ¿Cómo puede encontrar la versión de ArcGIS mediante programación? , pero hace referencia a todas las soluciones de ArcObjects (que supongo que podría llamar desde python , pero preferiría no hacerlo).
arcpy
arcgis-10.0
arcgis-10.1
mxd
RyanDalton
fuente
fuente
Respuestas:
Sé que esta pregunta tiene unos meses, pero la publico en caso de que ayude a otros. Desarrollé este kludge para analizar los números de versión de los documentos MXD. Básicamente, lee los primeros 4000 caracteres de un documento MXD y busca un número de versión. Probé con las versiones MXD 9.2, 9.3, 10.0 y 10.1.
Aquí hay un ejemplo de escaneo de una carpeta para archivos mxd e impresión de la versión y los nombres
Lo que devuelve esto:
fuente
La función a continuación se basa en la idea de Ryan, pero es un poco más directa. Los documentos de mapa de ArcGIS son en realidad documentos OLE, que se pueden analizar con el
oletools
módulo (disponible en pypi: https://pypi.python.org/pypi/oletools ). La función abre el archivo y lee la cadena de versión. Probado con 9.0, 9.3, 10.1 y 10.3, pero debería funcionar con cualquier cosa (no estoy seguro acerca de 3.x ...).fuente