Launching an independent Python program in a cross-platform way (including mac)

kyosohma at gmail.com kyosohma at gmail.com
Mon Apr 30 13:26:04 EDT 2007


On Apr 30, 11:29 am, "Eric_Dex... at msn.com" <Eric_Dex... at msn.com>
wrote:
> I would like to see this as a command along with something to open web
> pages..  Just one command instead of trying to figure out all the
> different op systems.  look forward to seeing your code
>
> https://sourceforge.net/projects/dex-tracker
>
> On Apr 30, 9:40 am, André <andre.robe... at gmail.com> wrote:
>
> > On Apr 30, 10:59 am, Kevin Walzer <k... at codebykevin.com> wrote:
> > [snip]
>
> > > There are extension modules on the Mac for integrating Python and
> > > AppleScript (the best one is appscript). However, if you want to limit
> > > yourself to core Python, your best best is osascript, a system
> > > command-tool that lets you call AppleScript code with arguments from
> > > other programs. This can be called via os.system.
>
> > > The basis syntax for doing this from Python might look something like this:
>
> > > os.system('osascript -e \'tell app \"Terminal\" to activate\'')
>
> > > This simply launches Terminal. Note that you have to deal with quoting
> > > issues. The equivalent syntax from AppleScript would be:
>
> > > tell app "Terminal" to activate
>
> > > If you want to Terminal to run a command-line program from AppleScript,
> > > you can do this with the "do script" command. Code to do this could look
> > > something like this:
>
> > > myscript = "python -e foo.py"
> > > os.system('osascript -e '\tell app \"Terminal"\ to do script %s\'',
> > > myscript)
>
> > > I haven't tested this, but you get the basic idea--define the script and
> > > command-line paramaters in a string, then pass that to
> > > AppleScript/osascript as a variable.  This code should launch Terminal,
> > > then run the external Python script.
>
> > > HTH,
>
> > Thanks.  I managed to get something like this to work.  Later, I'll
> > post it as an example to this thread so that other can use if for a
> > reference if needed.
>
> > André
>
> > > Kevin
>
> > > --
> > > Kevin Walzer
> > > Code by Kevinhttp://www.codebykevin.com-Hide quoted text -
>
> > - Show quoted text -- Hide quoted text -
>
> > - Show quoted text -

Opening web pages cross-platform can be done with the "webbrowser"
module: http://docs.python.org/lib/module-webbrowser.html

Mike




More information about the Python-list mailing list