HOW TO

Abrufen des Namens für einen Ordner, der ein bestimmtes Element enthält, mit ArcGIS API for Python

Last Published: April 7, 2023

Zusammenfassung

Verwenden Sie die nachstehenden Python-Skripte, um den Ordnernamen für ein bestimmtes Element in Portal for ArcGIS zu ermitteln.

Vorgehensweise

Im folgenden Beispiel wird die Element-ID verwendet, um das Element zu suchen und den Namen des entsprechenden Ordners zurückzugeben:

#libraries

import arcgis
from arcgis.gis import GIS
from arcgis.gis import User

#variables

portalurl = "https://hostname.domain.com/portal"
username = "....."
password = "....."
#the id of the item that you want to know is in which folder
#(you can retrieve the item in any other way you find suitable)
itemid = "4f394f2cda81415294f96134220e0c7d"

#login

gis = GIS(portalurl,username,password,verify_cert=False)

#retrieve item

item = gis.content.get(itemid)


#specify user

user = User(gis,username)

#retrieve the folder of the item by searching for the item id

for f in user.folders:
    list = user.items(folder=f)
    for i in list:
        search_id = list[list.index(i)].id
        if item.id == search_id:
            print(f['title'])

Element-IDs sind für die Organisation eindeutig, sodass das Skript im obigen Beispiel nur einen Ordnernamen ausgibt. Im folgenden Beispiel wird der Elementtitel verwendet, um das Element zu suchen. Im Gegensatz zur Element-ID kann es in der Organisation mehr als ein Element mit demselben Titel geben, und das folgende Skript gibt alle Elemente mit diesem Titel und die entsprechenden Ordnernamen zurück:

#libraries

import arcgis
from arcgis.gis import GIS
from arcgis.gis import User

#variables

portalurl = "https://hostname.domain.com/portal"
username = "........"
password = "........"
#the title of the item that you want to know is in which folder
#(you can retrieve the item in any other way you find suitable)
itemtitle= "..........."

#login

gis = GIS(portalurl,username,password,verify_cert=False)

#retrieve item

itemsearch = gis.content.search(query=f"title:{itemtitle}")


#specify user

user = User(gis,username)


#retrieve the folder of the item by searching for the item title

for f in user.folders:
    list = user.items(folder=f)
    for i in list:
        if i.title == itemtitle:
            print(f"{i} is in folder {f['title']}")

Artikel-ID: 000028966

Benachrichtigungen erhalten und Lösungen für neue oder häufige Probleme finden

Unser neuer KI-Chatbot stellt zusammengefasste Antworten und Videolösungen für Sie bereit.

Esri Support App herunterladen

Zugehörige Informationen

Weitere Informationen zu diesem Thema erkunden

Unterstützung durch ArcGIS-Experten anfordern

An den technischen Support wenden

Esri Support App herunterladen

Zu Download-Optionen wechseln