J'ai un service d'entités hébergé sur arcgis.com qui n'est pas partagé publiquement et j'ai besoin de lire les données depuis un script python. Le script ci-dessous fonctionnait sans problème jusqu'à récemment. Je reçois maintenant une erreur 000732 ("Le jeu de données n'existe pas ou n'est pas pris en charge") lorsque l'outil MakeFeatureLayer_management s'exécute. J'ai imprimé l'url pour m'assurer que je passe une url (chaîne) et non un objet à l'outil et l'url est valide, donc je ne comprends pas ce qui se passe. J'ai aussi essayé de générer un token et de le passer dans l'url, mais cela n'a pas fonctionné non plus.
Voici mon code :
pw = keyring.get_password("scripts", "UserName")
gis = GIS("https://www.arcgis.com", "UserName", pw) # Connexion à ArcGIS Online
#token = gis._con.token
layer_item_id = "34a9970d75f448da9898e3237efxxxx" # Couche de test TM Points AGOL dans mon compte
layer_item = gis.content.get(layer_item_id)
WebData = layer_item.layers[0]
WebData_url = layer_item.layers[0].url
#auth_url = f"{WebData_url}?token={token}"
print("web url", WebData_url) // une url valide est affichée à l'écran
arcpy.MakeFeatureLayer_management(WebData_url, "WebData") # Créer une couche d'entités temporaire TM Points
J'ai aussi mis à jour le partage en public et le code a fonctionné, donc je sais que c'est un problème d'authentification et j'ai juste besoin d'aide pour comprendre ce que je fais mal. J'ai essayé d'utiliser auth_url dans l'outil MakeFeatureLayer_management mais j'ai eu la même erreur.