1
나는 실행시 두 개의 매개 변수를 사용하는 applescript가 있습니다.파이썬 스크립트에서 applescript 인수를 전달하는 방법은 무엇입니까?
on run {targetBuddyPhone, targetMessage}
tell application "Messages"
set targetService to 1st service whose service type = iMessage
set targetBuddy to buddy targetBuddyPhone of targetService
send targetMessage to targetBuddy
end tell
end run
이 스크립트를 파이썬 스크립트 내에서 실행하고 싶습니다. 파이썬에서 애플 스크립트를 실행하는 방법을 알고 있지만 어떻게 인수를 주겠습니까? 다음은 현재 작성한 python 스크립트입니다.
#!/usr/bin/env python3
import subprocess
def run_applescript(script, *args):
p = subprocess.Popen(['arch', '-i386', 'osascript', '-e', script] +
[unicode(arg).encode('utf8') for arg in args],
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
err = p.wait()
if err:
raise RuntimeError(err, p.stderr.read()[:-1].decode('utf8'))
return p.stdout.read()[:-1].decode('utf8')
내가 터미널에서이 코드를 실행하려고 후에 나타나는 오류는 다음과 같습니다 고급의 도움을
Traceback (most recent call last):
File "messageExecuter.py", line 14, in <module>
run_applescript("sendMessage.scpt",1111111111,"hello")
File "messageExecuter.py", line 11, in run_applescript
raise RuntimeError(err, p.stderr.read()[:-1].decode('utf8'))
RuntimeError: (1, u'arch: posix_spawnp: osascript: Bad CPU type in executable')
감사합니다!