Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Sat 11 May 2013 13:40

Milanello Géo
Juste Inscrit !
Date d'inscription: 5 Oct 2012
Messages: 3

Script Python

Bonjour

J'ai réalisé un modèle qui simplifie des taches répétitives au sein du géo-traitement dans une base de données.
Le modèle fonctionne bien !
Le problème que lorsque j'ai exporté le modèle en Script python, l'exécution du script ne fonctionne pas !
SVP je veux une solution (T_T) au moins je veux connaitre le problème où ?

Est-ce que c'est au niveau d'un script spécifique qui permet d’exécuter certaine fonction ou quoi ?

Exemple pour le cas du merge : j'ai deux features class dans ma base & je veux les rassembler, je sais que c'est une simple taches en ArcGis ou en Model Builder ! Mais en python ça marche pas !

Merci

Hors ligne

 

#2 Sun 12 May 2013 10:27

lebon henri
Participant actif
Lieu: Vendée
Date d'inscription: 14 Jan 2008
Messages: 99

Re: Script Python

Bonjour.

Si vous avez exporté votre script python depuis un model builder, ce n'est pas rare que ca ne marche pas tout de suite. En général, il faut l'adapter un minimum. Faites voir votre code, on pourra surement mieux répondre.

cordialement.

Hors ligne

 

#3 Mon 13 May 2013 08:11

Nicolas Granier
Participant assidu
Date d'inscription: 19 Apr 2007
Messages: 271

Re: Script Python

Il peut s'agir d'une question de variable d'environnement. Pour lancer le code, vous devez vous placer dans la console windows, vous mettre dans le répertoire qui héberge le fichier python.exe (par exemple c:/python26/bin) puis exécuter la commande en préfixant par python et en écrivant le chemin entier de votre code.

dans mon cas ça donne quelque chose comme cela.

Code:

C:\Python27>python c:/dossier1/dossier2/moncode.py

A+

Hors ligne

 

#4 Mon 13 May 2013 11:31

vlanher
Participant occasionnel
Date d'inscription: 17 Nov 2010
Messages: 29

Re: Script Python

Bonjour,

Pour lancer ton code, as tu essayé à partir de Arcmap en le chargeant dans une nouvelle toolbox?

Pour ton problème de Merge, j'ai rencontré le même problème. Model Builder n'exporte pas un code Python très propre, il faut adapter comme il a été précisé plus haut.
Il faudrait que tu essaies quelque chose comme ça pour rassembler tes feature class:

Code:

import arcgisscripting
gp = arcgisscripting.create(9.3)
vt = gp.createobject("ValueTable")
gp.workspace = "mon_chemin"
fcs = gp.ListFeatureClasses()
for fc in fcs:
    vt.AddRow(fc+".shp")
gp.Merge_management(vt,"fichier_en_sortie")

En clair, pour t'expliquer un peu, je crée une table de valeur "vt" pour stocker mes feature class dedans. ça tévite de mettre les noms de fichiers les uns après les autres dans ta fonction merge.

Pour Arcgis 10, un exemple est disponible ici pour la syntaxe qui diffère de la 9.3. Regarde le premier exemple.
http://help.arcgis.com/fr/arcgisdesktop … 0q1000000/

A+

Vincent

Hors ligne

 

#5 Tue 14 May 2013 22:13

Milanello Géo
Juste Inscrit !
Date d'inscription: 5 Oct 2012
Messages: 3

Re: Script Python

Bonjour

Merci beaucoup pour toutes vos réponses
Désolé pour le retard car ma petite fille a tombé malade le week-end (T_T)

En effet, j'ai essayé toutes les réponses : la deuxième a résolu mon problème
Il faut avoir un seul chemin pour toutes les données, le problèmes était que le script ne peut pas écraser les couches qui sont dèjà créées  au cours des premiers essais ...

Merci une autre fois pour vos intérêts

Cordialement

A +

Hors ligne

 

#6 Wed 15 May 2013 08:53

vlanher
Participant occasionnel
Date d'inscription: 17 Nov 2010
Messages: 29

Re: Script Python

Bonjour,

essaie ça pour écraser tes couches déjà existantes. Je te donne un exemple pour le merge.

Code:

gp.OverwriteOutput = 1
gp.Merge_management(fichiers en entrée,fichier_en_sortie)

Bonne journée

Vincent

Dernière modification par vlanher (Wed 15 May 2013 08:53)

Hors ligne

 

#7 Thu 16 May 2013 20:51

Milanello Géo
Juste Inscrit !
Date d'inscription: 5 Oct 2012
Messages: 3

Re: Script Python

Merci bcp

Hors ligne

 

Pied de page des forums

Powered by FluxBB