Bonjour,

Je souhaite pilote/automatiser mes applications via du python.
Comme je suis sous mac, l'idee est d'utiliser de l'AppleScript puis de l'int�grer dans du python
Ci-dessous un petit exemple tr�s simple permettant d'exporter un fichier PDF en XLSX en utilisant Acrobat Adobe
Lancement du programme uniquement en AppleScript, marche nickel mais petit soucis d'int�gration dans python.
Je me retrouve avec ce message d'erreur suivant (soucis niveau partie System Events) :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
 
File "/anaconda3/lib/python3.6/site-packages/py_applescript-1.0.0-py3.6.egg/applescript/__init__.py", line 90, in run
File "/anaconda3/lib/python3.6/site-packages/py_applescript-1.0.0-py3.6.egg/applescript/__init__.py", line 65, in _unpackresult
applescript.ScriptError: System Events got an error: python3 n'est pas autorisé à un accès d'aide. (-1719) app='System Events' range=275-456
Donc un soucis niveau partie System Events ....
Si vous avez une id�e de comment mixer System Events avec du Python, je suis preneuse ,-)

Merci d'avance

Thais

Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
import applescript
 
scpt = applescript.AppleScript('''
        set MyPath to "Macintosh HD:Users:toto:Desktop:"
        set MyFileName to "a"
        set MySavePath to POSIX path of MyPath
        tell application "Adobe Acrobat"
                activate
                open MyPath & MyFileName & ".pdf"
                tell application "System Events"
                        tell process "Acrobat Pro DC"
                                click menu item "Classeur Microsoft Excel" of its menu of menu item "Feuille de calcul" of its menu of menu item "Exporter vers" of its menu of menu bar item "Fichier" of menu bar 1
                                delay 1
                                keystroke MySavePath & MyFileName & ".xlsx"
                                delay 1
                                keystroke return
                                delay 1
                                keystroke return
                                delay 2
                        end tell
                end tell
                tell active doc
                        close
                end tell
                quit
        end tell
''')
result = scpt.run()