ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Hilfe
  • Sign Out
ArcGIS Desktop

ArcGIS Online

Die Mapping-Plattform für Ihre Organisation

ArcGIS Desktop

Ein vollständiges professionelles GIS

ArcGIS Enterprise

GIS in Ihrem Unternehmen

ArcGIS for Developers

Werkzeuge zum Erstellen standortbezogener Apps

ArcGIS Solutions

Kostenlose Karten- und App-Vorlagen für Ihre Branche

ArcGIS Marketplace

Rufen Sie Apps und Daten für Ihre Organisation ab.

  • Dokumentation
  • Support
Esri
  • Anmelden
user
  • Eigenes Profil
  • Abmelden

ArcMap

  • Startseite
  • Erste Schritte
  • Karte
  • Analysieren
  • Verwalten von Daten
  • Werkzeuge
  • Erweiterungen

Integrieren von Skripten in ein Modell

  • Beispielanwendung
  • Python-Skript
  • Erstellen eines Skriptwerkzeugs
  • Hinzufügen des Skriptwerkzeugs zu einem Modell

Python oder andere Sprachskripte können in Modelle integriert werden, indem sie einem Skriptwerkzeug und das Skriptwerkzeug einem Modell hinzugefügt werden. Dies ist sinnvoll, wenn Python oder eine andere Skriptsprachenlogik erforderlich ist, um ein Modell zu optimieren oder aus ArcGIS auf ein externes Paket oder Programm zuzugreifen.

Die Integration von Skripten in Modelle beginnt im tatsächlichen Skript. Das Skript muss so erstellt werden, dass es in die Geoverarbeitungsumgebung integriert werden kann. Weitere Informationen finden Sie unter Erstellen eines Python-Skripts.

Nach der Erstellung des Skripts kann ein Skriptwerkzeug erstellt und einer Toolbox hinzugefügt werden. Dieses Skriptwerkzeug kann einem Modell hinzugefügt und verwendet werden, um zusätzliche Funktionalität für das Modell bereitzustellen.

Beispielanwendung

ArcGIS ist nicht für HTML konzipiert. Die Python-Skripterstellung bietet jedoch Zugriff auf Methoden und Funktionen, mit denen HTML-Dokumente erstellt und geändert werden können. Um diese HTML-Funktionalität in ArcGIS zu integrieren, betten Sie ein Python-Skriptwerkzeug in ein Modell ein.

Im folgenden Beispiel werden räumliche Abfragen und Attributabfragen für den Layer eines Flurstücks ausgeführt und ein HTML-Bericht generiert, der die Attribute eines vom Benutzer angegebenen Flurstücks und benachbarter Flurstücke auflistet. Die HTML-Erstellung wird innerhalb eines Python-Skripts ausgeführt, das vom Modell ausgeführt wird.

Python-Skript

Das folgende Skript tabletohtml.py wird verwendet, um den Inhalt einer Eingabetabelle zu lesen und einen HTML-Bericht zu generieren. Der Skriptcode wird am Ende dieses Themas bereitgestellt.

Tabelle-zu HTML-Python-Skript

Erstellen eines Skriptwerkzeugs

Die Schritte unten zeigen, wie ein Skriptwerkzeug erstellt wird, das das Skript tabletohtml.py ausführt. Weitere Details zum Erstellen von Skriptwerkzeugen finden Sie unter Kurzer Überblick über das Erstellen von Skriptwerkzeugen

  1. Klicken Sie mit der rechten Maustaste auf die entsprechende Toolbox, und klicken Sie auf Hinzufügen > Skript.
    Hinzufügen eines neuen Skripts

    Der Assistent Skript hinzufügen wird geöffnet.

  2. Verwenden Sie den Assistenten Skript hinzufügen", um allgemeine Skripteigenschaften anzugeben.
    Allgemeine Skripteigenschaften
  3. Geben Sie auf der nächsten Seite des Assistenten Skript hinzufügen an, welches Skript ausgeführt wird, wenn das Skriptwerkzeug ausgeführt wird.
    Skriptquelldatei
  4. Geben Sie auf der nächsten Seite des Assistenten Skript hinzufügen die Skriptwerkzeug-Parametereigenschaften an. Dieses Skriptwerkzeug verfügt über zwei Parameter: eine Eingabetabelle und eine Ausgabe-HTML-Datei. Diese Parameter wurden auch in tabletohtml.py definiert.
    Festlegen von Skriptwerkzeug-Parametereigenschaften
  5. Klicken Sie auf Fertig stellen, um das Skriptwerkzeug zur Toolbox hinzuzufügen.

Hinzufügen des Skriptwerkzeugs zu einem Modell

  1. Das Modell "Flurstückbericht" führt räumliche Abfragen und Attributabfragen für den Layer eines Flurstücks aus. Fügen Sie das Tabelle-zu-HTML-Skript dem Modell hinzu, um die gewünschte HTML-Erstellungsfunktionalität hinzuzufügen.
    Hinzufügen des Skriptwerkzeugs zu einem Modell
  2. Verbinden Sie die Ausgabe des Werkzeugs Layer lagebezogen auswählen als Eingabe mit dem Skriptwerkzeug, und legen Sie den Pfad der Skriptwerkzeugausgabe fest (der Pfad der zu generierenden HTML-Datei). Benennen Sie die Ausgabe des Skriptwerkzeugs darüber hinaus in Bericht um, und wandeln Sie die Variable in einen Modellparameter um.
Beispielmodell mit Skriptwerkzeug
Das fertige Modell mit einem Skriptwerkzeug, das zur Generierung eines HTML-Berichts verwendet wurde

import arcpy
import sys
import string
import os

tablePath = arcpy.GetParameterAsText(0)
filePath = arcpy.GetParameterAsText(1)

outfile = open(filePath, "w")
fields = arcpy.ListFields(tablePath)

fieldNames = []
for field in fields:
    if (field.type <> "Geometry" and field.type <> "BLOB"):
        fieldNames.append(field.name)       
outfile.write("<table border=""1"">\n")
outfile.write("<tr>\n")

for fieldName in fieldNames:
    outfile.write("<th>" + fieldName + "</th>\n")    
outfile.write("</tr>\n")

for row in arcpy.da.SearchCursor(tablePath, fieldNames):
    outfile.write("<tr>\n")
    for value in row:
        outfile.write("<td>" + str(value) + "</td>\n")
    outfile.write("</tr>\n")
outfile.write("</table>\n")

outfile.flush()
outfile.close()

ArcGIS Desktop

  • Startseite
  • Dokumentation
  • Support

ArcGIS Plattform

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Über Esri

  • Über uns
  • Karriere
  • Esri Blog
  • User Conference
  • Developer Summit
Esri
Wir sind an Ihrer Meinung interessiert.
Copyright © 2019 Esri. | Datenschutz | Rechtliches