Re: How to tell whetehr Python script called as CGI or from command line?

2007-05-11 Thread rowan
 import os
 if QUERY_STRING in os.environ:
  # CGI script

 might work.

Thanks Steve for this suggestion. I did something similar:
import os
req = os.getenv('REQUEST_URI')
if (not req is None) and len(req)  0:
web = True

which seemed to work for me.

Rowan

-- 
http://mail.python.org/mailman/listinfo/python-list


How to tell whetehr Python script called as CGI or from command line?

2007-04-16 Thread rowan
I'm writing a Python script that can either be called as a Cron job or
as a web page (i.e. as a CGI in response to an HTTP request). This is
to process the mailboxes on my web server (to which I don't have
command line access) to remove old messages. How do I find out whether
the script has been called as a Cron job or as a CGI? I need to know
this so I can format the output correctly, e.g. if this is a web
request I need to start the output with Content-type: text/html\n
\nhtml, to do newlines by p or br etc.

Can I just access some header line which will always have a value in a
web request, but which will be None if running from the command line
or as a Cron job, or something similar? How?

Thanks - Rowan

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: How to tell whetehr Python script called as CGI or from command line?

2007-04-16 Thread Steve Holden
[EMAIL PROTECTED] wrote:
 I'm writing a Python script that can either be called as a Cron job or
 as a web page (i.e. as a CGI in response to an HTTP request). This is
 to process the mailboxes on my web server (to which I don't have
 command line access) to remove old messages. How do I find out whether
 the script has been called as a Cron job or as a CGI? I need to know
 this so I can format the output correctly, e.g. if this is a web
 request I need to start the output with Content-type: text/html\n
 \nhtml, to do newlines by p or br etc.
 
 Can I just access some header line which will always have a value in a
 web request, but which will be None if running from the command line
 or as a Cron job, or something similar? How?
 
 Thanks - Rowan
 
The CGI standard requires that the calling server sets several 
environment variables, so you could test for the presence of one or more 
of those - this is only going to be indicative, though, since any shell 
could have the same variables set in its environment.

import os
if QUERY_STRING in os.environ:
 # CGI script

might work.

regards
  Steve
-- 
Steve Holden   +44 150 684 7255  +1 800 494 3119
Holden Web LLC/Ltd  http://www.holdenweb.com
Skype: holdenweb http://del.icio.us/steve.holden
Recent Ramblings   http://holdenweb.blogspot.com

-- 
http://mail.python.org/mailman/listinfo/python-list