Reputation: 949
I am using the following command to pass a string to python from Applescript
String mytext contains the HTML body of an email starting with <...
Applescript
display dialog (do shell script "/Users/mymac/Documents/'Microsoft User Data'/'Outlook Script Menu Items'/ test.py" & mytext)
Python
#!/usr/bin/env python
import sys
import string
def main():
print sys.argv[1:]
if __name__ == "__main__":
main()
How can I rectify this error?
Upvotes: 0
Views: 775
Reputation: 2665
The problem is you are executing a shell script ... by constructing a long line of text. "/Users/mymac/Documents/'Microsoft User Data'/'Outlook Script Menu Items'/ test.py" & " ... ")
but the "<" sign and the ">" sign have a special meaning for the shell.
Upvotes: 0
Reputation: 38392
You don't want to pass the HTML as an argument to the Python script. Instead, do something like:
display dialog (do shell script "/Users/mymac/Documents/'Microsoft User Data'/'Outlook Script Menu Items'/ test.py < webpage.html")
print sys.stdin.read()
Upvotes: 2