Publicar un servicio de entidades
En este tutorial, creará una capa de entidades alojada en ArcGIS Online para mostrar datos de embalses de Texas casi en tiempo real. Primero, descargará datos de embalses de Texas. A continuación, usará esta información para publicar una capa de entidades alojada y configurar una vista de esta. Configurará un script de Python para actualizar la capa de entidades y configurará una tarea de Windows para ejecutarlo. La capa de entidades de datos de embalses de Texas se sobrescribirá a medida que haya disponibles datos nuevos, por lo que los mapas web basados en la vista de entidades siempre mostrarán la información más reciente.
Acceder a datos de embalses de Texas casi en tiempo real
Primero, accederá a información sobre embalses del sitio web Water Data for Texas. A continuación, descargará los datos en formato GeoJSON y los almacenará localmente.
- En un navegador, vaya al sitio web Water Data for Texas. Desplácese hacia abajo y, en el gráfico Statewide Conservation Storage, haga clic en Recent Averaged Storage Conditions y elija GeoJSON.

El sitio web le redirige a https://www.waterdatafortexas.org/reservoirs/statewide/recent-conditions.geojson, que contiene datos de embalses de Texas casi en tiempo real. Este es un archivo GeoJSON. Contiene información para cada embalse de Texas, como la ubicación (coordenadas), el nombre, el volumen total de explotación, el porcentaje de volumen embalsado y la última actualización (marca de tiempo).

Nota:
El sitio web Water Data for Texas es dinámico. Se actualiza con frecuencia, tan pronto como haya disponibles datos nuevos. El valor de marca de tiempo de cada embalse muestra la hora de la última actualización. - Haga clic en la página, pulse Ctrl + A para seleccionar todo el texto de la página de condiciones recientes, haga clic con el botón derecho y, seguidamente, haga clic en Copiar. También puede pulsar Ctrl + C para copiar el texto.

- Abra un editor de texto como, por ejemplo, el Bloc de notas++, y pulse Ctrl + V para pegar el texto en un nuevo archivo.
- Guarde el archivo en su equipo local. En la ventana Guardar como, busque una carpeta en su equipo, como C:\Temp\. En Nombre de archivo, escriba recent-conditions.geojson y, para Guardar como tipo, elija Todos los tipos. Haga clic en Guardar.

Nota:
Verifique el archivo de la carpeta local después de guardarlo para asegurarse de que la extensión de archivo es .geojson y no .geojson.txt.
Agregar un elemento a ArcGIS Online
Utilizará un archivo GeoJSON local de datos de embalses de Texas para crear una capa de entidades alojada en ArcGIS Online.
- Inicie sesión en su cuenta de organización de ArcGIS.
Nota:
Si no tiene una cuenta de organización, consulte las opciones de acceso a software.
- Si es necesario, haga clic en Contenido y luego en Mi contenido.

- Haga clic en Nuevo elemento.

- Arrastre el archivo recent-conditions.geojson que acaba de guardar en el panel de carga o haga clic en Su dispositivo y busque el archivo.
- Para ¿Cómo desea agregar este archivo?, acepte la opción predeterminada Agregar recent-conditions.geojson y crear una capa de entidades alojada y haga clic en Siguiente.
- En la siguiente página de la página Nuevo elemento, introduzca lo siguiente:
- En Título, escriba Datos_recientes_embalses_TX_ seguido de su nombre o iniciales (por ejemplo, Datos_recientes_embalses_TX_(sunombre).
- En Etiquetas, escriba Texas, Embalses, Condiciones recientes y pulse Intro después de cada una.
- En Resumen, escriba Información de embalses de Texas casi en tiempo real .
Nota:
No puede crear dos capas en una organización de ArcGIS con el mismo nombre. Agregar sus iniciales a un nombre de capa garantiza que otras personas de su organización también puedan completar este tutorial. Una vez que se haya creado una capa, puede cambiar su nombre en el mapa para eliminar sus iniciales, lo que no afectará al nombre de la capa de datos subyacente.
- Haga clic en Guardar.
El proceso tardará unos minutos. Una vez completado, aparece la página Descripción general de la capa de entidades alojada Datos_recientes_embalses_TX_(sunombre). Además de esta capa, se agrega una copia del archivo GeoJSON Datos_recientes_embalses_TX a su sección Mi contenido.
Ha accedido a información de embalses de Texas casi en tiempo real y creado un servicio de entidades alojado en ArcGIS Online. A continuación, usará el servicio de entidades para crear una vista de entidades. Esta vista de entidades se puede personalizar, compartir públicamente y agregar a sus aplicaciones. Crear la vista de entidades permite que el servicio de entidades se actualice sin alterar la simbología y los elementos emergentes configurados para la vista. Así se simplifica el proceso de actualización de los datos posteriormente.
Crear una vista de capa de entidades alojada
Ahora, creará una vista de capa de entidades alojada a partir de la capa de entidades alojada, compartirá la vista de capa de entidades alojada públicamente, actualizará su simbología y configurará sus elementos emergentes.
Crear la vista de capa de entidades alojada
La capa de entidades alojada de embalses de Texas que creó se sobrescribirá cuando haya disponible información nueva. El proceso de sobreescritura eliminará los ajustes de simbología y elementos emergentes personalizados y los restaurará a la configuración predeterminada. Para evitar que cambie el modo en que se muestran los datos en sus aplicaciones y mapas web, creará una vista de capa de entidades alojada en ArcGIS Online y configurará sus ajustes de simbología y elementos emergentes. Seguirán siendo los mismos y mostrarán los datos más recientes tras sobrescribir la capa de entidades alojada.
- En la página Descripción general de la capa de entidades Datos_recientes_embalses_TX_(sunombre), haga clic en Mostrar más.

- Haga clic en el menú desplegable Crear capa de vista y elija Capa de vista.

- En la página Crear capa de vista, en el panel Datos_recientes_embalses_TX_(sunombre), la capa de puntos Datos_recientes_embalses_TX_(sunombre) está seleccionada de forma predeterminada. Haga clic dos veces en Siguiente.
Puede establecer definiciones de capas en el panel Capas incluidas. Para obtener más información sobre estas opciones, consulte la documentación Crear vistas de capas de entidades alojadas.
- En el panel Crear, introduzca lo siguiente:
- En Título, escriba Condiciones recientes de embalses de Texas (su nombre).
- En Carpeta, si lo desea, puede especificar la carpeta en la que desea guardar la capa de vista.
- En Etiquetas, escriba Agua, Entorno, Recursos naturales, Feeds en directo, feeds en directo pulsando Intro después de cada una.
- Para Resumen, puede proporcionar texto adicional sobre la capa de vista.
- Haga clic en Crear. Una vez creada la vista, aparece la ventana Correcto. Cierre esta ventana.
Se crea un nuevo elemento de vista de capa de entidades alojada desde la capa de entidades alojada y aparece la página de detalles del elemento para la nueva vista de capa de entidades.
- En la página Descripción general, haga clic en Compartir, elija Todos (público) y haga clic en Guardar.
La vista de capa de entidades alojada ahora es pública y accesible para todas las personas.
- En la cinta, haga clic en Contenido.
Ahora hay tres elementos en su página Mi contenido: el archivo GeoJSON, la capa de entidades alojada y la vista.

Nota:
Se recomienda usar una vista de capa de entidades alojada para compartir una capa de entidades alojada, manteniendo privada la capa de entidades alojada original. Puede cambiar los elementos emergentes y la simbología de la vista de capa de entidades alojada sin modificar la capa de entidades alojada original. Durante el proceso de actualización, la capa de entidades alojada se puede sobrescribir y los valores nuevos se reflejarán en la vista de capa de entidades alojada. La simbología de la vista de capa de entidades alojada se guarda con ella y no se ve afectada cuando se sobrescribe la capa de entidades alojada original.
Cambiar simbología
La vista de capa de entidades alojada tiene datos de embalses de Texas. Personalizará su simbología para representar mejor la información en la capa con el volumen total de explotación de los embalses de distintos tamaños de entidades y con el nivel actual de porcentaje de volumen embalsado en diferentes colores.
- Haga clic en la capa de entidades Condiciones recientes de embalses de Texas_(su nombre) para abrir la página del elemento de la vista de capa de entidades alojada.
La página del elemento Condiciones recientes de embalses de Texas_(su nombre) aparece en la pestaña Descripción general.
- Haga clic en Abrir en Map Viewer.

- En caso necesario, en el panel Capas, haga clic en la capa Condiciones recientes de embalses de Texas para activarla.
Nota:
Puede optar por eliminar su nombre del nombre de visualización de la capa Condiciones recientes de embalses de Texas (su nombre) haciendo clic en el botón Opciones de la capa y seleccionando Cambiar nombre.
- En la barra de herramientas Configuración (clara), haga clic en Estilos.

- En Elegir atributos, haga clic en el botón Campo.

- En la ventana Seleccionar campos que aparece, elija percent_full y conservation_capacity y haga clic en Agregar.

Los atributos se agregan al panel Estilos.
- Para percent_full, haga clic en el botón Reposicionar y arrástrelo sobre conservation_capacity.

- En Elegir un estilo, para Color y tamaño, haga clic en Opciones de estilo.

- En Recuentos y cantidades (color), haga clic en Opciones de estilo.

- En el panel Opciones de estilo, para Rango de datos, en el histograma, haga clic en el corte de valor mínimo, escriba 50 y pulse Intro.

Nota:
Los valores de su Rango de datos pueden ser diferentes, ya que está utilizando datos más recientes.
- En Estilo de símbolo, haga clic en la rampa de color.

- En la ventana Estilo de símbolo, en Colores, haga clic en rampa de colores.
- En la ventana Rampa, elija Azul 10 y haga clic en Hecho.

Para ver el nombre de una rampa de color, señálela con el puntero.
- En el panel Opciones de estilo, haga clic en Hecho.
- En Recuentos y cantidades (tamaño), haga clic en Opciones de estilo.

- Para Estilo de símbolo, haga clic en el símbolo. En la ventana Estilo de símbolo, en Color de contorno, haga clic en el botón Editar.

- Para #, elimine el valor actual, reemplácelo por 283849 y pulse Hecho.
- En el panel Opciones de estilo, haga clic en Hecho y, a continuación, haga clic en Hecho dos veces más.
Ya se ha establecido la simbología para la capa.
- En la barra de herramientas Contenido (oscuro), haga clic en Mapa base y luego en Lona gris claro.

Ya se ha establecido la simbología para el mapa base.

El mapa final muestra las condiciones recientes de embalses en Texas. El color de cada punto representa el porcentaje lleno de cada embalse y el tamaño del punto representa la capacidad total del embalse. A continuación, configurará el mapa y lo guardará.
Configurar el elemento emergente
Mejorará el elemento emergente de la capa para mostrar solo la información relevante. Mostrará el nombre, el volumen total de explotación y el porcentaje de volumen embalsado de cada embalse.
- En la barra de herramientas Configuración, haga clic en Elementos emergentes.

- En el panel Elementos emergentes, expanda Título, elimine el texto existente y haga clic en el botón Agregar campo.

Aparece la ventana Agregar campo.
- Para Lista de campos, elija full_name.
El título de la ventana emergente mostrará ahora el contenido del atributo full_name.
- En Lista de campos, haga clic en el botón Opciones y seleccione Eliminar.

- Haga clic en el botón Agregar contenido y luego en Texto.


Se abrirá un cuadro de texto.
- En el cuadro de texto, escriba o pegue {percent_full}% completo a las {timestamp} y haga clic en Aceptar.

Se remplazarán los nombres de campos de atributos entre llaves por los valores de dichos campos cuando se abra el elemento emergente haciendo clic en una entidad.
La ventana emergente mostrará el título y el texto que configuró al hacer clic en una entidad.

Todavía puede mejorar el formato de los campos configurando el modo en que se muestra cada uno de los campos.
- En la barra de herramientas Configuración, haga clic en la pestaña Campos y haga clic en el campo percent_full.
- En la ventana Administrar campo, cambie el Nombre de visualización a Porcentaje de volumen (%). Para Dígitos significativos, cambie el Mínimo y el Máximo a 0.

- Haga clic en Hecho.
- En la barra de herramientas Contenido, haga clic en Guardar y abrir y, a continuación, en Guardar como.
- En la ventana Guardar mapa, introduzca la siguiente información:
- En Título, escriba Embalses de Texas.
- En Etiquetas, escriba Agua, Texas y Embalses. Después de cada etiqueta, pulse Intro.
- En Resumen, escriba Un mapa casi en tiempo real de embalses de Texas que muestra el porcentaje completo y la capacidad.
- Haga clic en Guardar.
- Haga clic en un embalse en el mapa.
El elemento emergente muestra el nombre del embalse, el porcentaje de volumen embalsado y la fecha de la última actualización.
Ha creado una vista de capa de entidades alojada en ArcGIS Online a partir de la capa de entidades alojada de embalses. La vista de capa de entidades alojada le permite personalizar la visualización de la capa de embalses de Texas y conservar estas personalizaciones incluso cuando se sobrescriba la capa de entidades alojada. A continuación, sobrescribirá la capa de entidades alojada de embalses de Texas con un simple script de Python. La información actualizada se reflejará automáticamente en la vista de capa de entidades alojada.
Actualizar una capa de entidades alojada
A continuación, configurará un breve script para sobrescribir la capa de entidades alojada de embalses de Texas. Primero, descargará el script de sobreescritura desde ArcGIS Online. Luego, recuperará los parámetros de la capa de entidades alojada, por ejemplo, el título del elemento y el Id. del elemento. Por último, ejecutará el script localmente con la ventana de comandos de Python. El proceso de sobreescritura le permite actualizar la capa de entidades alojada con la información más reciente.
Descargar el script de sobreescritura
Primero, descargará el script para sobrescribir una capa de entidades alojada en ArcGIS Online.
- Descargue el archivo OverwriteFS.zip en su equipo.
El archivo .zip contiene varios elementos, que incluyen el script de Python (OverwriteFS.py) y un documento (ReadMe.pdf).
- Extraiga el contenido del archivo .zip en una carpeta en su equipo, por ejemplo, C:\Temp\.
- Abra con un editor de texto como el Bloc de notas o Notepad++ un nuevo archivo de texto en blanco.
- En la cinta de mapas, haga clic en el botón de navegación y haga clic en Contenido.

- En ArcGIS Online, en Mi contenido, haga clic en la capa de entidades alojada Datos_recientes_embalses_TX_(sunombre).
Necesitará saber el título y el Id. de elemento de esta capa de entidades alojada para actualizarla. Guardará esta información en un documento de texto como referencia.
- En la página Descripción general del elemento Datos_recientes_embalses_TX_(sunombre), copie el título del elemento y péguelo en el archivo de texto.

- Copie el Id. del elemento al final de la URL del elemento y péguelo en su archivo de texto. Guarde el archivo, pero déjelo abierto. Pronto necesitará esta información.
En este ejemplo, el título del elemento es Datos_recientes_embalses_TX_(sunombre) y el Id. del elemento es b99000442d0742c6aa503d5be5c1aad1. El Id. de elemento es único para cada elemento de ArcGIS Online. Su Id. de elemento será diferente.
Almacenar credenciales de ArcGIS Online localmente
ArcGIS Online requiere credenciales de inicio de sesión para sobrescribir elementos. Almacenará credenciales de ArcGIS localmente en un perfil seguro. Este perfil se utilizará en el script de Python para sobrescribir la capa de entidades alojada de embalses.
- Abra el menú Inicio de Windows, busque la ventana de comandos de Python y ábrala.
Nota:
Si realizó la instalación de ArcGIS API for Python por separado de una instalación de ArcGIS Pro, utilice su administrador de paquetes para activar el entorno en el que realizó la instalación de ArcGIS API for Python y luego abra la ventana de comandos de Python (consulte la página para Esri Developer para obtener ayuda para configurar Python y ArcGIS API for Python).
- Escriba cd, agregue un espacio, escriba la ruta a la carpeta en la que extrajo el script OverwriteFS.py y pulse Intro.
Por ejemplo, si extrajo el script en C:\Temp, deberá escribir cd C:\Temp.

- Escriba python y pulse Intro.

De esta manera se inicia la consola de Python en la ventana de comandos de Python. La versión de Python se anota en la consola y el mensaje de entrada cambia a >>>.
A continuación, importará el módulo de Python arcgis.
- En la consola de Python, escriba import arcgis y pulse Intro.

Nota:
La ventana de comandos de Python y el módulo arcgis de Python se incluyen con la instalación de ArcGIS Pro.
Luego almacenará sus credenciales de ArcGIS Online localmente agregando un perfil.
- Escriba el comando gis = arcgis.GIS(profile='learn_user', username= '<account>', password= '<pass>'), remplace <account> con su cuenta de nombre de usuario y <pass> con su contraseña. Pulse Intro.

Nota:
Sus credenciales de ArcGIS Online se guardarán de forma segura en el perfil learn_user. Puede obtener más información sobre el almacenamiento de credenciales de ArcGIS Online localmente en un perfil visitando la página Trabajar con distintos esquemas de autenticación.
- Escriba exit() y pulse Intro para cerrar la consola de Python y volver a la ventana de comandos.
Sobrescribir la capa de entidades alojada
Ahora, use el script de Python de sobreescritura, el perfil de ArcGIS Online y los parámetros de la capa de entidades alojada (título e Id. de elemento) para actualizar la capa de entidades alojada de embalses.
- En la ventana de comandos de Python, en la carpeta C:\Temp\ que contiene el script OverwriteFS.py, escriba el siguiente comando: python OverwriteFS.py learn_user <item id> <item title> <GeoJSON URL>, sustituyendo <item id> y <item title> por los par´maetros de la capa de entidades alojada que guardó en su archivo de texto. Reemplazará <GeoJSON URL> por la URL de la fuente de datos con los datos actualizados, https://www.waterdatafortexas.org/reservoirs/statewide/recent-conditions.geojson.
En este código, learn_user es el perfil de ArcGIS Online guardado localmente.
Nota:
Dado que ya ha creado la capa de entidades alojada utilizando los datos más recientes, el script no hará ningún cambio. En su lugar, puede usar temporalmente este archivo, que contiene una instantánea del archivo recent-conditions.geojson del 26 de diciembre de 2019.
Si lo ejecuta con la URL de GeoJSON al sitio en directo sobre el agua de Texas, el comando se parecerá al siguiente (el Id. del elemento será otro):
python OverwriteFS.py learn_user b99000442d0742c6aa503d5be5c1aad1 TX_reservoirs_recent_(yourname) https://www.waterdatafortexas.org/reservoirs/statewide/recent-conditions.geojson
Si descarga la instantánea del archivo recent-conditions.geojson del 26 de diciembre de 2019 y la guarda en la carpeta C:\Temp\ en la que está trabajando (reemplace el archivo existente), el comando tendrá un aspecto similar al siguiente (el Id. de elemento será diferente y la ruta será una ruta de archivo local en lugar de una dirección URL):
python OverwriteFS.py learn_user b99000442d0742c6aa503d5be5c1aad1 TX_reservoirs_recent_(yourname) c:\Temp\recent-conditions.geojson
- Pulse Intro para ejecutar el comando.
La ventana de comandos mostrará los resultados. El mensaje Elapsed Time for Overwrite Process al final significa que el script ha actualizado correctamente la capa de entidades alojada.

- En un navegador, abra su mapa Embalses de Texas en Visor de mapas. Haga clic en cualquier reserva para ver su ventana emergente.
La ventana emergente muestra la fecha actualizada y los valores de porcentaje de volumen. La simbología de la vista de capa de entidades alojada se mantiene a medida que la establece.
Puede ejecutar un script de Python para sobrescribir una capa de entidades alojada en ArcGIS Online. A continuación, creará y programará una tarea en Windows para ejecutar automáticamente el script de sobreescritura en intervalos regulares.
Crear y programar una tarea
Puede ejecutar un script de Python para actualizar una capa de entidades alojada. Ahora, automatizará la ejecución del script programando una tarea en Windows. Primero, creará un archivo .bat. Luego, creará una tarea en el Programador de tareas de Windows. La tarea ejecutará con regularidad el archivo .bat, que ejecutará el script de sobreescritura de Python, que a su vez buscará actualizaciones y sobrescribirá la capa de entidades alojada si hay disponibles datos nuevos.
Crear un archivo .bat
Los archivos .bat de Windows son archivos de texto simple con un conjunto de instrucciones para que el intérprete de línea de comandos las ejecute.
- Abra un editor de texto como el Bloc de notas o Notepad++.
- Copie y pegue el texto siguiente en el editor de texto:
"C:\Program Files\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\python.exe" "C:\Temp\OverwriteFS.py" learn_user 3b2b385c923147349dec02025e10aa55 TX_reservoirs_recent_(yourname) https://www.waterdatafortexas.org/reservoirs/statewide/recent-conditions.geojsonTambién puede escribir el texto como una única línea.
- Cambie el Id. de elemento de 3b2b385c923147349dec02025e10aa55 al Id. de elemento de su capa de entidades alojada.
- Cambie Datos_recientes_embalses_TX_(sunombre) al nombre de su elemento.
- Guarde el archivo en la carpeta C:\Temp\ y escriba EmbalsesTX_sobreescritura.bat como nombre de archivo. En el menú desplegable Guardar como tipo, elija Todos los tipos (o, si está utilizando Notepad++, elija Archivo de lotes).

A continuación, creará una tarea para ejecutar el archivo .bat.
Crear una tarea básica
Ahora que tiene el archivo .bat, programará una tarea para ejecutarla a intervalos regulares.
- Abra el menú Inicio de Windows. Busque y abra el Programador de tareas.
- En el panel Acciones, haga clic en Crear tarea básica.

Aparece la ventana Asistente para crear tareas básicas y se inicia la pestaña Crear una tarea básica.
- En la ventana Asistente para crear tareas básicas, en Nombre, escriba embalses TX y, en Descripción, escriba Tarea para ejecutar el archivo TXreservoirs_overwrite.bat para actualizar el servicio de entidades.

- Haga clic en Siguiente.
Aparece la pestaña Desencadenador de tareas.
- En ¿Cuándo desea que se inicie la tarea?, confirme que se ha seleccionado Diariamente y haga clic en Siguiente.

El asistente se actualiza a la pestaña Diariamente.
- En Fecha de inicio, elija la fecha de hoy. La fecha de inicio puede ser una hora después de la hora actual (4:35 pm en el ejemplo).

- En Repetir cada, escriba 1 para que la tarea se ejecute cada día y haga clic en Siguiente.
- En la página Acción, confirme que Iniciar un programa esté seleccionado como acción de tarea y haga clic en Siguiente.
- En la página Iniciar un programa, en el cuadro de texto Programa/script, escriba C:\Temp\TXreservoirs_overwrite.bat y haga clic en Siguiente.
Nota:
Si guardó el archivo .bat en otra carpeta, asegúrese de introducir la ruta correcta al archivo .bat. También puede hacer clic en el botón Examinar y buscar la ubicación del archivo.

La pestaña Finalizar aparece en el asistente.
- Seleccione el cuadro Abrir el cuadro de diálogo de propiedades para esta tarea cuando haga clic en Finalizar y haga clic en Finalizar.

Aparece la ventana Propiedades de embalses TX (equipo local).
- En la pestaña General, en Opciones de seguridad, active la casilla Ejecutar tanto si el usuario ha iniciado sesión como si no y active No almacenar la contraseña. Haga clic en Aceptar.

La tarea se ejecutará a la hora programada, actualizando la capa de entidades alojada con la información más reciente del sitio web Water Data for Texas. La vista de capa de entidades alojada mostrará la información actualizada de la capa de entidades alojada al mismo tiempo que conserva la misma configuración de simbología y elemento emergente.
En este tutorial, ha descargado datos del sitio web Water Data for Texas y creado una capa de entidades alojada. Ha creado, personalizado y compartido una vista de capa de entidades alojada de la capa de entidades alojada para aislar el elemento público del proceso de actualización. Ha adaptado, descargado y utilizado un script de Python para obtener los datos más recientes del sitio web y actualizar la capa de entidades alojada. También ha creado un archivo .bat y programado una tarea de Windows para ejecutar el script de Python. Cuando se ejecuta la tarea, el script de sobreescritura de Python actualiza la capa de entidades alojada. Ha configurado la tarea para que se ejecute a diario, por lo que las aplicaciones o mapas web que muestren la vista de capa de entidades alojada mostrarán todos los días los datos más recientes.
