Re: Problem configuring apache to run python cgi on Ubuntu 14.04
On Tue, Sep 22, 2015 at 7:36 AM,wrote: > Thank you very much. Can I write .py pages like in PHP or should I > use a framework like Django, Web2py or TurboGears? I recommend using WSGI and a framework that uses it (my personal preference is Flask, but the above will also work). Here are a couple of simple sites: https://github.com/Rosuav/Flask1 https://github.com/Rosuav/MinstrelHall You can see them in operation here: http://rosuav.com/1/ http://minstrelhall.com/ Note how URLs are defined in the code, rather than by having a bunch of loose files (the way a PHP web site works). This makes it a lot easier to group things logically, and utility lines like redirects become very cheap. The maintenance burden is far lighter with this kind of one-file arrangement. These sites are really tiny, though, so if you have something a bit bigger, you'll probably want to split things into multiple files. Good news! You can do that, too - it's easy enough to split on any boundary you find logical. ChrisA -- https://mail.python.org/mailman/listinfo/python-list
Re: Problem configuring apache to run python cgi on Ubuntu 14.04
On Mon, 21 Sep 2015 12:51:09 -0700, tropical.dude.net wrote: > On Monday, September 21, 2015 at 9:47:33 PM UTC+2, tropical...@gmail.com > wrote: >> On Monday, September 21, 2015 at 9:41:29 PM UTC+2, John Gordon wrote: >> > In <44e870a7-9567-40ba-8a65-d6b52a8c5...@googlegroups.com> >> > tropical.dude@gmail.com writes: >> > >> > > print("Content-Type: text/html;charset=utf-8") >> > > print("Hello World!") >> > >> > As I recall, you must have a blank line between the headers and the >> > content. >> > >> > But that may or may not be your problem, as you haven't told us >> > exactly what is going wrong. >> > >> > -- >> > John Gordon A is for Amy, who fell down the stairs >> > gor...@panix.com B is for Basil, assaulted by bears >> > -- Edward Gorey, "The Gashlycrumb >> > Tinies" >> >> I am new to Ubuntu, is there a command so I can find out what the >> problem is? > > The only error I can see right now is forbedden, you don't have > permission to access /index.py on this server. this is not a linux permissions error it is an error with the apache configuration you need to check roe acache config files (you may also want to investigate WSGI as CGI is outdated) -- Perfection is acheived only on the point of collapse. - C. N. Parkinson -- https://mail.python.org/mailman/listinfo/python-list
Re: Problem configuring apache to run python cgi on Ubuntu 14.04
On Monday, September 21, 2015 at 11:41:54 AM UTC-7, tropical...@gmail.com wrote: > Hello everybody, > > I installed the LAMP stack on in Ubuntu, but I am having > problems configuring Apache to run python CGI scripts. > > I ran: > sudo a2enmod cgi > > I added to apache2.conf > > Options +ExecCGI > AddHandler cgi-script .py > > > I created index.py: > #!/usr/bin/env python > # -*- coding: UTF-8 -*-# enable debugging > import cgitb > > cgitb.enable() > print("Content-Type: text/html;charset=utf-8") > print("Hello World!") > > But it is still not working. > > Can anybody help me out? > > Thanks in advance. "It isn't working" is about as useful as telling a mechanic "My car doesn't work" without giving details on what exactly is happening. What exactly isn't working? What error message are you getting? The first thing I would check is to make sure the permissions on index.py are set to allow execution. It is easy to forget to do that. -- https://mail.python.org/mailman/listinfo/python-list
Re: Problem configuring apache to run python cgi on Ubuntu 14.04
On Mon, 21 Sep 2015 20:41:13 +0200,wrote: Hello everybody, (...) I created index.py: #!/usr/bin/env python # -*- coding: UTF-8 -*-# enable debugging import cgitb cgitb.enable() print("Content-Type: text/html;charset=utf-8") print("Hello World!") But it is still not working. Can anybody help me out? Thanks in advance. Which Python are you running? If it's Python 3, change the shebang accordingly because "python" is assuming Python 2. -- Vriendelijke groeten / Kind regards, Albert Visser Using Opera's mail client: http://www.opera.com/mail/ -- https://mail.python.org/mailman/listinfo/python-list
Re: Problem configuring apache to run python cgi on Ubuntu 14.04
On Monday, September 21, 2015 at 9:30:11 PM UTC+2, Albert Visser wrote: > On Mon, 21 Sep 2015 20:41:13 +0200,wrote: > > > Hello everybody, > > > (...) > > > > I created index.py: > > #!/usr/bin/env python > > # -*- coding: UTF-8 -*-# enable debugging > > import cgitb > > > > cgitb.enable() > > print("Content-Type: text/html;charset=utf-8") > > print("Hello World!") > > > > But it is still not working. > > > > Can anybody help me out? > > > > Thanks in advance. > > Which Python are you running? If it's Python 3, change the shebang > accordingly because "python" is assuming Python 2. > > -- > Vriendelijke groeten / Kind regards, > > Albert Visser > > Using Opera's mail client: http://www.opera.com/mail/ I am running python3.4 -- https://mail.python.org/mailman/listinfo/python-list
Re: Problem configuring apache to run python cgi on Ubuntu 14.04
On Monday, September 21, 2015 at 9:20:22 PM UTC+2, sohca...@gmail.com wrote: > On Monday, September 21, 2015 at 11:41:54 AM UTC-7, tropical...@gmail.com > wrote: > > Hello everybody, > > > > I installed the LAMP stack on in Ubuntu, but I am having > > problems configuring Apache to run python CGI scripts. > > > > I ran: > > sudo a2enmod cgi > > > > I added to apache2.conf > > > > Options +ExecCGI > > AddHandler cgi-script .py > > > > > > I created index.py: > > #!/usr/bin/env python > > # -*- coding: UTF-8 -*-# enable debugging > > import cgitb > > > > cgitb.enable() > > print("Content-Type: text/html;charset=utf-8") > > print("Hello World!") > > > > But it is still not working. > > > > Can anybody help me out? > > > > Thanks in advance. > > "It isn't working" is about as useful as telling a mechanic "My car doesn't > work" without giving details on what exactly is happening. > > What exactly isn't working? What error message are you getting? > > The first thing I would check is to make sure the permissions on index.py are > set to allow execution. It is easy to forget to do that. The error message that I am receiving in my browser is: 403: You don't have permission to access /index.py on this server. The permissions of index.py is 755 -- https://mail.python.org/mailman/listinfo/python-list
Re: Problem configuring apache to run python cgi on Ubuntu 14.04
In <44e870a7-9567-40ba-8a65-d6b52a8c5...@googlegroups.com> tropical.dude@gmail.com writes: > print("Content-Type: text/html;charset=utf-8") > print("Hello World!") As I recall, you must have a blank line between the headers and the content. But that may or may not be your problem, as you haven't told us exactly what is going wrong. -- John Gordon A is for Amy, who fell down the stairs gor...@panix.com B is for Basil, assaulted by bears -- Edward Gorey, "The Gashlycrumb Tinies" -- https://mail.python.org/mailman/listinfo/python-list
Re: Problem configuring apache to run python cgi on Ubuntu 14.04
On Monday, September 21, 2015 at 9:41:29 PM UTC+2, John Gordon wrote: > In <44e870a7-9567-40ba-8a65-d6b52a8c5...@googlegroups.com> > tropical.dude@gmail.com writes: > > > print("Content-Type: text/html;charset=utf-8") > > print("Hello World!") > > As I recall, you must have a blank line between the headers and the > content. > > But that may or may not be your problem, as you haven't told us exactly > what is going wrong. > > -- > John Gordon A is for Amy, who fell down the stairs > gor...@panix.com B is for Basil, assaulted by bears > -- Edward Gorey, "The Gashlycrumb Tinies" I am new to Ubuntu, is there a command so I can find out what the problem is? -- https://mail.python.org/mailman/listinfo/python-list
Re: Problem configuring apache to run python cgi on Ubuntu 14.04
On Monday, September 21, 2015 at 9:47:33 PM UTC+2, tropical...@gmail.com wrote: > On Monday, September 21, 2015 at 9:41:29 PM UTC+2, John Gordon wrote: > > In <44e870a7-9567-40ba-8a65-d6b52a8c5...@googlegroups.com> > > tropical.dude@gmail.com writes: > > > > > print("Content-Type: text/html;charset=utf-8") > > > print("Hello World!") > > > > As I recall, you must have a blank line between the headers and the > > content. > > > > But that may or may not be your problem, as you haven't told us exactly > > what is going wrong. > > > > -- > > John Gordon A is for Amy, who fell down the stairs > > gor...@panix.com B is for Basil, assaulted by bears > > -- Edward Gorey, "The Gashlycrumb Tinies" > > I am new to Ubuntu, is there a command so I can find out what the problem is? The only error I can see right now is forbedden, you don't have permission to access /index.py on this server. -- https://mail.python.org/mailman/listinfo/python-list
Problem configuring apache to run python cgi on Ubuntu 14.04
Hello everybody, I installed the LAMP stack on in Ubuntu, but I am having problems configuring Apache to run python CGI scripts. I ran: sudo a2enmod cgi I added to apache2.conf Options +ExecCGI AddHandler cgi-script .py I created index.py: #!/usr/bin/env python # -*- coding: UTF-8 -*-# enable debugging import cgitb cgitb.enable() print("Content-Type: text/html;charset=utf-8") print("Hello World!") But it is still not working. Can anybody help me out? Thanks in advance. -- https://mail.python.org/mailman/listinfo/python-list
Re: Problem configuring apache to run python cgi on Ubuntu 14.04
On Monday, September 21, 2015 at 10:29:48 PM UTC+2, alister wrote: > On Mon, 21 Sep 2015 12:51:09 -0700, tropical.dude.net wrote: > > > On Monday, September 21, 2015 at 9:47:33 PM UTC+2, tropical...@gmail.com > > wrote: > >> On Monday, September 21, 2015 at 9:41:29 PM UTC+2, John Gordon wrote: > >> > In <44e870a7-9567-40ba-8a65-d6b52a8c5...@googlegroups.com> > >> > tropical.dude@gmail.com writes: > >> > > >> > > print("Content-Type: text/html;charset=utf-8") > >> > > print("Hello World!") > >> > > >> > As I recall, you must have a blank line between the headers and the > >> > content. > >> > > >> > But that may or may not be your problem, as you haven't told us > >> > exactly what is going wrong. > >> > > >> > -- > >> > John Gordon A is for Amy, who fell down the stairs > >> > gor...@panix.com B is for Basil, assaulted by bears > >> > -- Edward Gorey, "The Gashlycrumb > >> > Tinies" > >> > >> I am new to Ubuntu, is there a command so I can find out what the > >> problem is? > > > > The only error I can see right now is forbedden, you don't have > > permission to access /index.py on this server. > > this is not a linux permissions error it is an error with the apache > configuration you need to check roe acache config files > (you may also want to investigate WSGI as CGI is outdated) > > > > -- > Perfection is acheived only on the point of collapse. > - C. N. Parkinson Thank you very much. Can I write .py pages like in PHP or should I use a framework like Django, Web2py or TurboGears? -- https://mail.python.org/mailman/listinfo/python-list
WSGI (was: Re: Python CGI)
On 05/20/2014 03:52 AM, Tim Chase wrote: While Burak addressed your (Fast-)CGI issues, once you have a test-script successfully giving you output, you can use the standard-library's getpass.getuser() function to tell who your script is running as. LoadModule wsgi_module modules/mod_wsgi.so AddHandler wsgi-script .wsgi WSGIDaemonProcess myproj user=chris threads=3 [root@t-centos1 ~]# ps -ef|grep chris chris 1201 1199 0 08:47 ?00:00:00 /usr/sbin/httpd ---8--- #!/usr/bin/python import getpass def application(environ, start_response): status = '200 OK' output = 'Hello World!' output += getpass.getuser() response_headers = [('Content-type', 'text/plain'), ('Content-Length', str(len(output)))] start_response(status, response_headers) return [output] ---8--- Hello World!root Hmm, why is it root? I'm using Apache and mod_userdir. Can I define WSGIDaemonProcess for each user? - Chris -- https://mail.python.org/mailman/listinfo/python-list
WSGI (was: Re: Python CGI)
On 05/20/2014 03:52 AM, Tim Chase wrote: While Burak addressed your (Fast-)CGI issues, once you have a test-script successfully giving you output, you can use the standard-library's getpass.getuser() function to tell who your script is running as. LoadModule wsgi_module modules/mod_wsgi.so AddHandler wsgi-script .wsgi WSGIDaemonProcess myproj user=chris threads=3 [root@t-centos1 ~]# ps -ef|grep chris chris 1201 1199 0 08:47 ?00:00:00 /usr/sbin/httpd ---8--- #!/usr/bin/python import getpass def application(environ, start_response): status = '200 OK' output = 'Hello World!' output += getpass.getuser() response_headers = [('Content-type', 'text/plain'), ('Content-Length', str(len(output)))] start_response(status, response_headers) return [output] ---8--- Hello World!root Hmm, why is it root? I'm using Apache and mod_userdir. Can I define WSGIDaemonProcess for each user? - Chris -- Gruß, Christian -- https://mail.python.org/mailman/listinfo/python-list
Re: WSGI (was: Re: Python CGI)
On Sun, 25 May 2014 09:06:18 +0200, Chris wrote: On 05/20/2014 03:52 AM, Tim Chase wrote: While Burak addressed your (Fast-)CGI issues, once you have a test-script successfully giving you output, you can use the standard-library's getpass.getuser() function to tell who your script is running as. LoadModule wsgi_module modules/mod_wsgi.so AddHandler wsgi-script .wsgi WSGIDaemonProcess myproj user=chris threads=3 [root@t-centos1 ~]# ps -ef|grep chris chris 1201 1199 0 08:47 ? 00:00:00 /usr/sbin/httpd ---8--- #!/usr/bin/python import getpass def application(environ, start_response): status = '200 OK' output = 'Hello World!' output += getpass.getuser() response_headers = [('Content-type', 'text/plain'), ('Content-Length', str(len(output)))] start_response(status, response_headers) return [output] ---8--- Hello World!root Hmm, why is it root? I'm using Apache and mod_userdir. Can I define WSGIDaemonProcess for each user? - Chris is your apache server running as root? if so it probably should be corrected -- Why is it taking so long for her to bring out all the good in you? -- https://mail.python.org/mailman/listinfo/python-list
Python CGI
Hi, I'd like to use Python for CGI-Scripts. Is there a manual how to setup Python with Fast-CGI? I'd like to make sure that Python scripts aren't executed by www-user, but the user who wrote the script. -- Gruß, Christian -- https://mail.python.org/mailman/listinfo/python-list
Re: Python CGI
On 05/19/14 21:32, Christian wrote: Hi, I'd like to use Python for CGI-Scripts. Is there a manual how to setup Python with Fast-CGI? Look for Mailman fastcgi guides. Here's one for gentoo, but I imagine it'd be easily applicable to other disros: https://www.rfc1149.net/blog/2010/12/30/configuring-mailman-with-nginx-on-gentoo/ hth, burak -- https://mail.python.org/mailman/listinfo/python-list
Re: Python CGI
On 2014-05-19 20:32, Christian wrote: I'd like to use Python for CGI-Scripts. Is there a manual how to setup Python with Fast-CGI? I'd like to make sure that Python scripts aren't executed by www-user, but the user who wrote the script. While Burak addressed your (Fast-)CGI issues, once you have a test-script successfully giving you output, you can use the standard-library's getpass.getuser() function to tell who your script is running as. -tkc -- https://mail.python.org/mailman/listinfo/python-list
Data transfer from Python CGI to javascript
I have written the following program #!c:\Python27\Python.exe import cgi, cgitb; import sys, serial cgitb.enable() ser = serial.Serial('COM27', 9600) myvar = ser.readline() print Content-type:text/html\n\n print html head title Real Time Temperature /title script type=text/javascript window.onload = startInterval; function startInterval() { setInterval(startTime();,1000); } function startTime(myvar) { document.getElementById('mine').innerHTML =Temperature +parseInt(myvar); } /script /head body h1Real Time Temperature:/h1 div id=mine/div /body/html It is giving an output of 'NaN' in the output. If the python program is run alone it is giving the correct output. Can anyone please help. Is it also possible to separate the python and the javascript to two different files. If so how will I get/transfer the data in/from HTML . Thanks -- http://mail.python.org/mailman/listinfo/python-list
Re: Data transfer from Python CGI to javascript
On 09/08/2013 07:53, e...@cleantechsolution.in wrote: I have written the following program #!c:\Python27\Python.exe import cgi, cgitb; import sys, serial cgitb.enable() ser = serial.Serial('COM27', 9600) myvar = ser.readline() print Content-type:text/html\n\n print html head title Real Time Temperature /title script type=text/javascript window.onload = startInterval; function startInterval() { setInterval(startTime();,1000); } function startTime(myvar) { document.getElementById('mine').innerHTML =Temperature +parseInt(myvar); } /script /head body h1Real Time Temperature:/h1 div id=mine/div /body/html It is giving an output of 'NaN' in the output. If the python program is run alone it is giving the correct output. Can anyone please help. Is it also possible to separate the python and the javascript to two different files. If so how will I get/transfer the data in/from HTML . Thanks At a guess I'd say that it's because you have: setInterval(startTime();,1000); which will call 'startTime' with no arguments, but: function startTime(myvar) which means that it's expecting an argument. -- http://mail.python.org/mailman/listinfo/python-list
Problem with running python cgi scripts through my browser
Dear Python Tutors, I am having problems trying to send an email (using the smtplib module ) to send an email to myself over my browser using a python script, which is being called by an html form that I have created. My python cgi script is located in my cgi-bin directory, which I had made sure that in my httpd configuration, I had added the python extensions so that it can be run as a cgi script over my browser. If I run my python script directly on the commandline, I am able to send an email to myself and receive it. However, when I try to do the same and run it from my html form, it doesn't work. I'm sure I'm missing something here, but just can't figure out what. My suspicions could be that to send an email over the browser requires a specific format, which I could not figure out. Below is my cgi script and errors that I get when I run the cgi script. Any help would be appreciated. Many thanks, Sue - my script: import cgi import string,sys import smtplib import cgitb cgitb.enable() sys.stderr = sys.stdout def main(): print Content-type: text/html\n form = cgi.FieldStorage() if form.has_key(firstname) and form[firstname].value != : result = pName: + form[firstname].value + pFavorite Color(s): + form[colors].value + pFavorite Drinks(s): + str(form.getlist(drinks)) + pEmail: + form[email].value return result else: print Please enter your firstname! TEXT = main() FROM = myem...@gmail.com TO = myem...@gmail.com SUBJECT = Second try # Prepare actual message message = \ From: %s To: %s Subject: %s %s % (FROM,,.join(TO), SUBJECT, TEXT) # Send the mail server2 = smtplib.SMTP(localhost) server2.sendmail(FROM, TO, message) server2.quit() - Error I get: /usr/lib/python2.6/cgitb.py:173: DeprecationWarning: BaseException.message has been deprecated as of Python 2.6 value = pydoc.html.repr(getattr(evalue, name)) *class 'socket.error'*Python 2.6.6: /usr/bin/python Fri Apr 20 15:13:06 2012 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /var/www/cgi-bin/action.py in **()37 38 # Send the mail 39 server2 = smtplib.SMTP(localhost) 40 server2.sendmail(FROM, TO, message) 41 server2.quit() server2 *undefined*, *smtplib* = module 'smtplib' from '/usr/lib/python2.6/smtplib.pyc', smtplib.*SMTP* = class smtplib.SMTP /usr/lib/python2.6/smtplib.py in *__init__*(self=smtplib.SMTP instance, host='localhost', port=0, local_hostname=None, timeout=object object) 237 self.default_port = SMTP_PORT 238 if host: 239 (code, msg) = self.connect(host, port) 240 if code != 220: 241 raise SMTPConnectError(code, msg) code *undefined*, msg *undefined*, *self* = smtplib.SMTP instance, self.* connect* = bound method SMTP.connect of smtplib.SMTP instance, *host* = 'localhost', *port* = 0 /usr/lib/python2.6/smtplib.py in *connect*(self=smtplib.SMTP instance, host='localhost', port=25) 293 if not port: port = self.default_port 294 if self.debuglevel 0: printstderr, 'connect:', (host, port) 295 self.sock = self._get_socket(host, port, self.timeout) 296 (code, msg) = self.getreply() 297 if self.debuglevel 0: printstderr, connect:, msg *self* = smtplib.SMTP instance, self.sock *undefined*, self.*_get_socket* = bound method SMTP._get_socket of smtplib.SMTP instance, *host* = 'localhost', *port* = 25, self.*timeout* = object object /usr/lib/python2.6/smtplib.py in *_get_socket*(self=smtplib.SMTP instance, port='localhost', host=25, timeout=object object) 271 # and just alter the socket connection bit. 272 if self.debuglevel 0: printstderr, 'connect:', (host, port) 273 return socket.create_connection((port, host), timeout) 274 275 def connect(self, host='localhost', port = 0): *global* *socket* = module 'socket' from '/usr/lib/python2.6/socket.pyc', socket.*create_connection* = function create_connection, *port* = 'localhost', *host* = 25, *timeout* = object object /usr/lib/python2.6/socket.py in *create_connection*(address=('localhost', 25), timeout=object object) 563 except error, msg: 564 if sock is not None: 565 sock.close() 566 567 raise error, msg *global* *error* = class 'socket.error', *msg* = error(13, 'Permission denied') *class 'socket.error'*: [Errno 13] Permission denied args = (13, 'Permission denied') errno = 13 filename = None message = '' strerror = 'Permission denied' -- http://mail.python.org/mailman/listinfo/python-list
RE: Python - CGI-BIN - Apache Timeout Problem
Thanks Chris, I isolated it using logging import logging logging.basicConfig(filename=test3.log, level=logging.INFO) then logging.info('sniffer got to point A') and going through my code until I isolated the problem to a function with scapy called sniff. For some reason this function operates very weirdly on FreeBSD9. I have already submitted an email to the scapy mailing list. Going to try to replicate this on Fedora but I doubt I will see this problem. Even from the command line the sniff() function is not working correctly on FreeBSD 9. -S -Original Message- From: ch...@rebertia.com [mailto:ch...@rebertia.com] On Behalf Of Chris Rebert Sent: Friday, March 02, 2012 3:23 PM To: Sean Cavanaugh (scavanau) Cc: python-list@python.org Subject: Re: Python - CGI-BIN - Apache Timeout Problem On Fri, Mar 2, 2012 at 12:09 PM, Sean Cavanaugh (scavanau) scava...@cisco.com wrote: snip THE PROBLEM: When I execute the scripts from the command line (#python main.py) it generates it fine (albeit slowly), it prints all the html code out including the script. The ‘core’ part of the script dumbed down to the lowest level is- proc = subprocess.Popen(['/usr/local/bin/python', 'tests.py'], stdout=subprocess.PIPE) output = proc.stdout.read() Note the red warning box about possible deadlock with .stdout.read() and friends: http://docs.python.org/library/subprocess.html#popen-objects print output proc.stdout.close() As the docs advise, try using .communicate() [http://docs.python.org/library/subprocess.html#subprocess.Popen.communicate ] instead: proc = subprocess.Popen(…) out, err = proc.communicate() print out When I open main.py and execute the script it just hangs… it seems to execute the script (I see pcap fires on the interface that I am testing on the firewall) but its not executing correctly… or loading the entire webpage…the webpage keeps chugging along and eventually gives me an error timeout. The hanging makes me suspect that the aforementioned deadlock is occurring. Cheers, Chris -- http://chrisrebert.com -- http://mail.python.org/mailman/listinfo/python-list
Python - CGI-BIN - Apache Timeout Problem
Hello List, Would appreciate some insight/help, ran out of ideas... BRIEF OVERVIEW: I am trying to create a simple webserver gui wrapper for a set of scripts I developed to test some of our firewalls here at Cisco. Being that the total amount of engineer that will ever probably use this is 4 people and my limited python experience I just decided to do a quick cgi-bin solution. I control the machine with the webserver on em0 where I do my fw testing on em1/em2. Browser goes to http://webserver/main.py- main.py executes a script-tests.py -test.py imports my engine v6tester_main.py which is a series of functions I wrote. tests.py kicks of whatever test main.py wanted. THE PROBLEM: When I execute the scripts from the command line (#python main.py) it generates it fine (albeit slowly), it prints all the html code out including the script. The 'core' part of the script dumbed down to the lowest level is- proc = subprocess.Popen(['/usr/local/bin/python', 'tests.py'], stdout=subprocess.PIPE) output = proc.stdout.read() print output proc.stdout.close() When I open main.py and execute the script it just hangs... it seems to execute the script (I see pcap fires on the interface that I am testing on the firewall) but its not executing correctly... or loading the entire webpage...the webpage keeps chugging along and eventually gives me an error timeout. I know it's not a permissions issue or setup issue b/c I did a proof of concept where I just fired one simple pcap and it works fine (reported back just like it would if I ran it on the command line).. it has something to do with either the amount of prints out the script is doing, or the timing. I see no problems except the timeout (nothing in logs: /var/log/http-error.log). My script takes about 8 secounds to run. It does use threading but I wouldn't think that would mess it up. BTW: I posted here if this helps anyone: http://stackoverflow.com/questions/9524758/cgi-bin-timing-timeout-on-fre ebsd-apache22 Thanks in advance for any ideas. I can include the whole main.py if that would help. Sean Cavanaugh Cisco Systems -- http://mail.python.org/mailman/listinfo/python-list
Re: Python - CGI-BIN - Apache Timeout Problem
On Fri, Mar 2, 2012 at 12:09 PM, Sean Cavanaugh (scavanau) scava...@cisco.com wrote: snip THE PROBLEM: When I execute the scripts from the command line (#python main.py) it generates it fine (albeit slowly), it prints all the html code out including the script. The ‘core’ part of the script dumbed down to the lowest level is- proc = subprocess.Popen(['/usr/local/bin/python', 'tests.py'], stdout=subprocess.PIPE) output = proc.stdout.read() Note the red warning box about possible deadlock with .stdout.read() and friends: http://docs.python.org/library/subprocess.html#popen-objects print output proc.stdout.close() As the docs advise, try using .communicate() [http://docs.python.org/library/subprocess.html#subprocess.Popen.communicate ] instead: proc = subprocess.Popen(…) out, err = proc.communicate() print out When I open main.py and execute the script it just hangs… it seems to execute the script (I see pcap fires on the interface that I am testing on the firewall) but its not executing correctly… or loading the entire webpage…the webpage keeps chugging along and eventually gives me an error timeout. The hanging makes me suspect that the aforementioned deadlock is occurring. Cheers, Chris -- http://chrisrebert.com -- http://mail.python.org/mailman/listinfo/python-list
RE: Python - CGI-BIN - Apache Timeout Problem
Hey Chris, Thanks for your quick reply! I switched my code to- proc = subprocess.Popen(['/usr/local/bin/python', 'tests.py'], stdout=subprocess.PIPE) out, err = proc.communicate() print out proc.stdout.close() It still dead locked. Interestingly enough When I did a #python tests.py on the command line even that was taking awhile to print out to the command line so I decided to restart my webserver... wow from mucking before something must have been running in the background still. I got the script down to 2 seconds or so... Now it still works but faster when I do #python main.py it generates all the text to the command line but the website still hangs when I go to http://webserver/main.py... I am not sure what is going wrong... no error in the /var/log except for the eventual timeout after a couple minutes goes by. -S -Original Message- From: ch...@rebertia.com [mailto:ch...@rebertia.com] On Behalf Of Chris Rebert Sent: Friday, March 02, 2012 3:23 PM To: Sean Cavanaugh (scavanau) Cc: python-list@python.org Subject: Re: Python - CGI-BIN - Apache Timeout Problem On Fri, Mar 2, 2012 at 12:09 PM, Sean Cavanaugh (scavanau) scava...@cisco.com wrote: snip THE PROBLEM: When I execute the scripts from the command line (#python main.py) it generates it fine (albeit slowly), it prints all the html code out including the script. The ‘core’ part of the script dumbed down to the lowest level is- proc = subprocess.Popen(['/usr/local/bin/python', 'tests.py'], stdout=subprocess.PIPE) output = proc.stdout.read() Note the red warning box about possible deadlock with .stdout.read() and friends: http://docs.python.org/library/subprocess.html#popen-objects print output proc.stdout.close() As the docs advise, try using .communicate() [http://docs.python.org/library/subprocess.html#subprocess.Popen.communicate ] instead: proc = subprocess.Popen(…) out, err = proc.communicate() print out When I open main.py and execute the script it just hangs… it seems to execute the script (I see pcap fires on the interface that I am testing on the firewall) but its not executing correctly… or loading the entire webpage…the webpage keeps chugging along and eventually gives me an error timeout. The hanging makes me suspect that the aforementioned deadlock is occurring. Cheers, Chris -- http://chrisrebert.com -- http://mail.python.org/mailman/listinfo/python-list
RE: Python - CGI-BIN - Apache Timeout Problem
Hey All, So maybe this part is important (after doing some troubleshooting) hopefully not everyone has beers in hand already since its Friday :-) The way the code works if you want to send through the firewall (i.e. SERVER-FIREWALL-SERVER) I split the process into two threads. One is listening on the egress, then I send on the ingress. The main waits until the thread finishes (it times out after 2 seconds). I had to do this b/c scapy (the library I used) won't let me send pcaps while I receive them. This lets me see packets on both sides (i.e. did that sort of internet traffic go through the firewall). The reason I think this could be a problem is when I ran a test where I sent to the firewall (rather than through it) and my program does not need to thread the webserver works fine.. Suggestions anyone? -S -Original Message- From: ch...@rebertia.com [mailto:ch...@rebertia.com] On Behalf Of Chris Rebert Sent: Friday, March 02, 2012 3:23 PM To: Sean Cavanaugh (scavanau) Cc: python-list@python.org Subject: Re: Python - CGI-BIN - Apache Timeout Problem On Fri, Mar 2, 2012 at 12:09 PM, Sean Cavanaugh (scavanau) scava...@cisco.com wrote: snip THE PROBLEM: When I execute the scripts from the command line (#python main.py) it generates it fine (albeit slowly), it prints all the html code out including the script. The ‘core’ part of the script dumbed down to the lowest level is- proc = subprocess.Popen(['/usr/local/bin/python', 'tests.py'], stdout=subprocess.PIPE) output = proc.stdout.read() Note the red warning box about possible deadlock with .stdout.read() and friends: http://docs.python.org/library/subprocess.html#popen-objects print output proc.stdout.close() As the docs advise, try using .communicate() [http://docs.python.org/library/subprocess.html#subprocess.Popen.communicate ] instead: proc = subprocess.Popen(…) out, err = proc.communicate() print out When I open main.py and execute the script it just hangs… it seems to execute the script (I see pcap fires on the interface that I am testing on the firewall) but its not executing correctly… or loading the entire webpage…the webpage keeps chugging along and eventually gives me an error timeout. The hanging makes me suspect that the aforementioned deadlock is occurring. Cheers, Chris -- http://chrisrebert.com -- http://mail.python.org/mailman/listinfo/python-list
python cgi webpage won't redirect before background children processes finish
Hi all, I have a python cgi script which looks like this: [CODE STARTING HERE] open('x') print 'Content-Type:nbsp;text/html\n\n' .. print 'meta http-equiv=refresh content=15;url=%s' % myURL .. ### after printing the webpage os.system('python myfile.py') logfile.write('END OF SCRIPT') logfile.close() [CODE ENDING] Question: I want this cgi webpage to automatically redirect to myURL after 15 seconds. As soon as the execution of this script finishes, the corresponding job disappears from ps command output, the webpage is displayed and the log file is written. However, the webpage doesn't redirect after 15 seconds unless the background child process 'python myfile.py' finishes by then. Is this problem caused by initialing the children job through os.system() ? Does any one know what I need to change to make the redirection work before background children processes finish? Thank you very much! Yingjie -- http://mail.python.org/mailman/listinfo/python-list
Python CGI windows
Dear All, I Have certain clarification in python CGI. I use Python IDLE *1. How do we execute CGI Scripts in Windows? 2. How do i configure the Server?(If i use WAMP,XAMPP) 3. Is mod_python required for python cgi? * Someone Please revert back to me with the solution for the same.I would be at-most thankful -- Thanks Regards, Srikanth.N -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI windows
On 2010-08-13 12:40, Srikanth N wrote: *1. How do we execute CGI Scripts in Windows? * You'll need a web server. *2. How do i configure the Server?(If i use WAMP,XAMPP) * For CGI, you just need your server configured for CGI, nothing Python-specific. It would surprise me if XAMPP didn't set up a working cgi-bin for your programming pleasure anyway. *3. Is mod_python required for python cgi? * No. mod_python is a completely different approach to running Python from the web. Don't use it, it's dead. If you want something similar, use mod_wsgi. ** Come to think of it, you should probably look into WSGI anyway -- you can run WSGI scripts via CGI for the time being, that's simple enough, and switch to something else for production, or for serious development, later on. Someone Please revert back to me with the solution for the same.I would be at-most thankful This line is fascinating, -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI windows
On 2010-08-13 12:40, Srikanth N wrote: *2. How do i configure the Server?(If i use WAMP,XAMPP) * Sorry, I forgot to link you to http://www.editrocket.com/articles/python_apache_windows.html Hope this helps. -- http://mail.python.org/mailman/listinfo/python-list
[issue9007] CGIHTTPServer supports only Python CGI scripts
anatoly techtonik techto...@gmail.com added the comment: It was actual only for old Mac versions without popen2/popen3 calls. popenX calls were replaced with subprocess which should be available on MacOS. -- status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue9007 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue9007] CGIHTTPServer supports only Python CGI scripts
Changes by anatoly techtonik techto...@gmail.com: -- title: CGIHTTPServer - CGIHTTPServer supports only Python CGI scripts ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue9007 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue9007] CGIHTTPServer supports only Python CGI scripts
Changes by Brian Curtin cur...@acm.org: -- priority: normal - low stage: - needs patch type: - behavior versions: -Python 3.3 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue9007 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
Python, CGI and Sqlite3
Dear list members, I am writing CGI program that reads a text feild and uses with select statement to retrieve data from a database file using sqlite3. the program behaived very strange as it does not recognizes the import sqlite3 statement? and it gives the following error ImportError: No module named sqlite3, i tried it on python shell and all statements are work well. i tried it also by prining the output to a text file instead using cgi web folder, and it worked. Looking forward to hearing from you. best regards, Majdi Sawalha Faculty of Engineering School of Computing University of Leeds Leeds, LS2 9JT UK http://www.comp.leeds.ac.uk/sawalha -- http://mail.python.org/mailman/listinfo/python-list
Re: Python, CGI and Sqlite3
On 04/13/2010 12:41 PM, Majdi Sawalha wrote: import sqlite3 statement? and it gives the following error ImportError: No module named sqlite3, i tried it on python shell and all statements are work well. A couple possible things are happening but here are a few that pop to mind: 1) you're running different versions of python (sqlite was bundled beginning in 2.5, IIRC) so when you run from a shell, you get python2.5+ but your CGI finds an older version. Your CGI can dump the value of sys.version which you can compare with your shell's version 2) the $PYTHONPATH is different between the two. Check the contents of sys.path in both the shell and the CGI program to see if they're the same. You might also dump the results of os.environ.get('PYTHONPATH', None) to see if an environment variable specifies the $PYTHONPATH differently 3) while it reads correctly above, it's theoretically possible that you have a spelling error like import sqllite3? I've been stung once or twice by this sort of problem so it's not entirely impossible :) -tkc -- http://mail.python.org/mailman/listinfo/python-list
RE: Python, CGI and Sqlite3
-Original Message- From: python-list-bounces+shahmed=sfwmd@python.org [mailto:python-list-bounces+shahmed=sfwmd@python.org] On Behalf Of Tim Chase Sent: Tuesday, April 13, 2010 2:36 PM To: Majdi Sawalha Cc: python-list@python.org Subject: Re: Python, CGI and Sqlite3 On 04/13/2010 12:41 PM, Majdi Sawalha wrote: import sqlite3 statement? and it gives the following error ImportError: No module named sqlite3, i tried it on python shell and all statements are work well. A couple possible things are happening but here are a few that pop to mind: 1) you're running different versions of python (sqlite was bundled beginning in 2.5, IIRC) so when you run from a shell, you get python2.5+ but your CGI finds an older version. Your CGI can dump the value of sys.version which you can compare with your shell's version 2) the $PYTHONPATH is different between the two. Check the contents of sys.path in both the shell and the CGI program to see if they're the same. You might also dump the results of os.environ.get('PYTHONPATH', None) to see if an environment variable specifies the $PYTHONPATH differently 3) while it reads correctly above, it's theoretically possible that you have a spelling error like import sqllite3? I've been stung once or twice by this sort of problem so it's not entirely impossible :) -tkc Tim is right, following import works fine with me. import sqlite3 -- http://mail.python.org/mailman/listinfo/python-list -- http://mail.python.org/mailman/listinfo/python-list
Re: Converting Python CGI to WSGI scripts
Sebastian Bassi wrote: On Tue, Mar 16, 2010 at 2:18 PM, pyt...@bdurham.com wrote: I have a few dozen simple Python CGI scripts. Are there any advantages or disadvantages to rewriting these CGI scripts as WSGI scripts? It depends of the script. WSGI should be faster since you don't start a Python instance for each call (as in CGI). It's almost always faster. But be careful about global state. Remember that WSGI/FCGI programs are really functions, called over and over with a new transaction on each call. So your function has to be reusable. Things like initializing global variables at program load time, rather than when the main function is called, may give trouble. Also, be careful about leaving files, database connections, and sockets open after the main function returns. John Nagle -- http://mail.python.org/mailman/listinfo/python-list
Re: Converting Python CGI to WSGI scripts
Sebastian/John, Thank you very much for your feedback. John: I initially missed the nuance of WSGI scripts being function calls. I suspect your tip has saved me a lot of pain :) Regards, Malcolm -- http://mail.python.org/mailman/listinfo/python-list
Converting Python CGI to WSGI scripts
I have a few dozen simple Python CGI scripts. Are there any advantages or disadvantages to rewriting these CGI scripts as WSGI scripts? Apologies if my terminology is not correct ... when I say WSGI scripts I mean standalone scripts like the following simplified (as an example) template: import sys def application(environ, start_response): output = 'Welcome to your mod_wsgi website! It uses:\n\nPython %s' % sys.version response_headers = [ ('Content-Length', str(len(output))), ('Content-Type', 'text/plain'), ] start_response('200 OK', response_headers) return [output] When I say script I don't mean classic WSGI application in the sense of a .serve_forever() loop coordinating a bunch of related scripts - I mean individual, standalone scripts. Hope this makes sense :) Thank you, Malcolm -- http://mail.python.org/mailman/listinfo/python-list
Re: Converting Python CGI to WSGI scripts
On Tue, Mar 16, 2010 at 2:18 PM, pyt...@bdurham.com wrote: I have a few dozen simple Python CGI scripts. Are there any advantages or disadvantages to rewriting these CGI scripts as WSGI scripts? It depends of the script. WSGI should be faster since you don't start a Python instance for each call (as in CGI). -- Sebastián Bassi. Diplomado en Ciencia y Tecnología. Curso de Python en un día: http://bit.ly/cursopython Python for Bioinformatics: http://tinyurl.com/biopython Non standard disclaimer: READ CAREFULLY. By reading this email, you agree, on behalf of your employer, to release me from all obligations and waivers arising from any and all NON-NEGOTIATED agreements, licenses, terms-of-service, shrinkwrap, clickwrap, browsewrap, confidentiality, non-disclosure, non-compete and acceptable use policies (BOGUS AGREEMENTS) that I have entered into with your employer, its partners, licensors, agents and assigns, in perpetuity, without prejudice to my ongoing rights and privileges. You further represent that you have the authority to release me from any BOGUS AGREEMENTS on behalf of your employer. -- http://mail.python.org/mailman/listinfo/python-list
Re: best performance for storage of server information for python CGI web app?
In article 58e5cd75-75be-4785-8e79-490364396...@e31g2000vbm.googlegroups.com, davidj411 davidj...@gmail.com wrote: i was also thinking about using SQL Lite with one DB to store all the info. with this option, i would not have to worry about concurrent updates, but as the file size increases, i could expect performance to suffer again? Depends what you mean by suffer. Performance always decreases as size gets larger unless you take specific steps (such as better algorithms or bigger hardware). Using indexes should give SQLite reasonable performance; you can always upgrade to a faster SQL implementation or switch to another kind of storage. But honestly, until you get to millions of records, you should be fine with SQLite. -- Aahz (a...@pythoncraft.com) * http://www.pythoncraft.com/ The best way to get information on Usenet is not to ask a question, but to post the wrong information. -- http://mail.python.org/mailman/listinfo/python-list
best performance for storage of server information for python CGI web app?
I am wondering what will give me the best performance for storing information about the servers in our environment. currently i store all info about all servers in a single shelve file, but i have concerns. 1) as the size of the shelve file increases, will performance suffer ? 2) what about if 2 updates occur at the same time to the shelve file? when a shelve file is opened, is the whole file read into memory? if either scenario (1 or 2) is true, then should i think about creating a shelve file per server? i was also thinking about using SQL Lite with one DB to store all the info. with this option, i would not have to worry about concurrent updates, but as the file size increases, i could expect performance to suffer again? I am running Python 2.6 CGI scripts on Apache web server on windows platform. they interact with the current shelve file to pull info or request info from a python service which will go collect the info and put it into the shelve file. -- http://mail.python.org/mailman/listinfo/python-list
Re: In python CGI, how to pass hello back to a javascript function as an argument at client side?
zxo102 a écrit : Hi everyone, How can I pass a string generated from python cgi at server side to a javascript function as an argument at client side? This is common HTTP / javascriot stuff - nothing related to Python. First learn about the HTTP protocol - something you obviously need if doing web development -, then eventually google for XMLHttpRequest (or 'ajax'). To make a long story short: the client side doesn't give a damn about how the server-side works - it requests an url (- read the part about HTTP Request in the rfc), waits for the response (- read the part about HTTP Response in the rfc), and whatever it wants with the response. FWIW, HTTP requests can have a query string containing arguments. From the server-side POV, your CGI script doesn't return anything - it generates a HTTP response, which will be sent back to the client by Apache. -- http://mail.python.org/mailman/listinfo/python-list
Re: In python CGI, how to pass hello back to a javascript function as an argument at client side?
zxo102 zxo...@gmail.com (z) wrote: z Hi everyone, z How can I pass a string generated from python cgi at server side z to a z javascript function as an argument at client side? z I want test.py to return a hello back so the javascript function z load takes hello as argument like load(hello). z 2. server side: test.py z ... z #!c:\python24\python.exe z def main(): zmessage = 'hello' z#return message z main() z ... z Any ideas? CGI scripts return stuff by printing it, or more generally writing to stdout. So print message should do. The rest is not a Python question but a Javascript question. -- Piet van Oostrum p...@vanoostrum.org WWW: http://pietvanoostrum.com/ PGP key: [8DAE142BE17999C4] -- http://mail.python.org/mailman/listinfo/python-list
In python CGI, how to pass hello back to a javascript function as an argument at client side?
Hi everyone, How can I pass a string generated from python cgi at server side to a javascript function as an argument at client side? Here is my case: 1. client side: load is a javascript function in a html page. It starts the python CGI test.py via Apache: html script language=javascript ... load(test.py ); ... /script ... /html I want test.py to return a hello back so the javascript function load takes hello as argument like load(hello). 2. server side: test.py ... #!c:\python24\python.exe def main(): message = 'hello' #return message main() ... Any ideas? Thanks in advance for your help. ouyang -- http://mail.python.org/mailman/listinfo/python-list
Serving html and python cgi through BaseHTTPServer.py
Hello all. im tinkering with some beginner cgi stuff in python. (form processing) i have a basic html document with a form and some inputs and i have a cgi.py file to process the form. how does one serve html and python cgi through the BaseHTTPServer included with python 2.6 ? i have tried to go to http://localhost:8000/index.html but no go. i get a Error response 501 Unsupported method ('GET'). /mads -- http://mail.python.org/mailman/listinfo/python-list
Re: Unix Change Passwd Python CGI
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Derek Tracy wrote: Apache is running on the same system that needs the password changed. I need to keep security high and can not install additional modules at this time. I just need a general direction to start looking, and I do not have expect installed on the system. I recommend looking in the Samba source code where they have a program that does just that. Roger -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (GNU/Linux) iEYEARECAAYFAkmlGVcACgkQmOOfHg372QTZHACdFG0+Ls2Su/jRqkc4YZyxXK35 N7AAoNKfd7bMypR7b6Ex6auaU/9D4rKa =POal -END PGP SIGNATURE- -- http://mail.python.org/mailman/listinfo/python-list
Unix Change Passwd Python CGI
I am using python version 2.5.1 and need to create a python cgi application to allow a user to change their unix password. Apache is running on the same system that needs the password changed. I need to keep security high and can not install additional modules at this time. I just need a general direction to start looking, and I do not have expect installed on the system. Any ideas would be wonderful! R/S -- - Derek Tracy trac...@gmail.com - -- http://mail.python.org/mailman/listinfo/python-list
Re: Unix Change Passwd Python CGI
IMHO That sounds like the biggest security hole I can think of. Anyways you can open a pipe to passwd. to have the change there password. James On Tue, Feb 24, 2009 at 5:19 PM, Derek Tracy trac...@gmail.com wrote: I am using python version 2.5.1 and need to create a python cgi application to allow a user to change their unix password. Apache is running on the same system that needs the password changed. I need to keep security high and can not install additional modules at this time. I just need a general direction to start looking, and I do not have expect installed on the system. Any ideas would be wonderful! R/S -- - Derek Tracy trac...@gmail.com - -- http://mail.python.org/mailman/listinfo/python-list -- http://www.goldwatches.com/ http://www.jewelerslounge.com/ -- http://mail.python.org/mailman/listinfo/python-list
small python-cgi wiki?
Hello, I'm looking to set up a small private wiki, and am looking for recommendations. Some sort of CGI based package that I could just untar somewhere web accessable via Apache would be great. Any ideas? Thanks, :) -- http://mail.python.org/mailman/listinfo/python-list
Re: small python-cgi wiki?
On Jan 28, 12:02 pm, Bernard Rankin beranki...@yahoo.com wrote: I'm looking to set up a small private wiki, and am looking for recommendations. Some sort of CGI based package that I could just untar somewhere web accessable via Apache would be great. There are a number of them listed at http://wiki.python.org/moin/PythonWikiEngines . You might have a look at PikiPiki. -- http://mail.python.org/mailman/listinfo/python-list
Re: small python-cgi wiki?
On Jan 28, 2009, at 6:02 PM, Bernard Rankin wrote: I'm looking to set up a small private wiki, and am looking for recommendations. Some sort of CGI based package that I could just untar somewhere web accessable via Apache would be great. You might be interested by Nanoki, a small, simple wiki engine. Online demo: http://svr225.stepx.com:3388/search?q=python http://svr225.stepx.com:3388/nanoki One thing though... it's not Python :) Cheers, -- PA. http://alt.textdrive.com/nanoki/ -- http://mail.python.org/mailman/listinfo/python-list
Re: small python-cgi wiki?
I'm looking to set up a small private wiki, and am looking for recommendations. Some sort of CGI based package that I could just untar somewhere web accessable via Apache would be great. http://hatta.sheep.art.pl/About · single file · stores stuff in mercurial. · it's WSGI, so yes you can run it as CGI too (wsgiref.handlers.CGIHandler) http://hatta.sheep.art.pl/Features -- дамјан ( http://softver.org.mk/damjan/ ) A: Because it reverses the logical flow of converstion. Q: Why is top posting frowned upon? -- http://mail.python.org/mailman/listinfo/python-list
Re: using subprocess module in Python CGI
Dear Matt, Thank you for your answer. This script is just a kind of test script so as to actually get it started on doing any simple job. The actual process would be much more complicated where in I would like to extract the tar file and search for a file with certain extension and this file would be given as input to another program installed on the server. Later on I would also like to use process.wait() so that I can get a status of the job execution and completion from the server and this information can be displayed to the users on the web-page where they submit their jobs. As to what I understand subprocess.call() would be the best in that case. Please correct, if I am wrong. The whole process is like a user submitting a tar file via the web-browser with some data and getting back the processed results in the form of a new tar file after performing a few operations on the files submitted as input tar file. Thanking you once again for your valuable time. Regards. On Wed, Dec 24, 2008 at 1:54 AM, Matt Nordhoff mnordh...@mattnordhoff.comwrote: ANURAG BAGARIA wrote: Hello, I am a Python Newbie and would like to call a short python script via browser using a CGI script, but initially I am trying to call the same python script directly through python command line. The script intends to perform a few command line in a pipe and I have written the script (a short one) as follows. #!/usr/bin/python import cgi, string, os, sys, cgitb, commands, subprocess import posixpath, macpath #file = x.tar.gz #comd = tar -xf %s % (file) #os.system(comd) #commands.getoutput('tar -xf x.tar.gz | cd demo; cp README ../') comd = [\ tar -xf x.tar.gz, \ cd demo, \ cp README ../, \ ] That's not how subprocess.call() works. You're trying to run an executable called tar -xf x.tar.gz, passing it the arguments cd demo and cp README ../. outFile = os.path.join(os.curdir, output.log) outptr = file(outFile, w) errFile = os.path.join(os.curdir, error.log) errptr = file(errFile, w) retval = subprocess.call(comd, 0, None, None, outptr, errptr) errptr.close() outptr.close() if not retval == 0: errptr = file(errFile, r) errData = errptr.read() errptr.close() raise Exception(Error executing command: + repr(errData)) but after trying to execute this independently, I get the following error which I am unable to interpret : Traceback (most recent call last): File process.py, line 18, in module retval = subprocess.call(comd, 0, None, None, outptr, errptr) File /usr/lib/python2.5/subprocess.py, line 443, in call return Popen(*popenargs, **kwargs).wait() File /usr/lib/python2.5/subprocess.py, line 593, in __init__ errread, errwrite) File /usr/lib/python2.5/subprocess.py, line 1135, in _execute_child raise child_exception Could someone suggest where am I going wrong and if corrected, what is the probability of this script being compatible with being called through the browser. Thanking you people in advance. Well, you'd need to output something, but otherwise, sure, why not? print Content-Type: text/html print print html.../html Regards. Why do you even need to use subprocess to do this? All it's doing is extracting the README file from a tarball, right? You can use the tarfile module for that. http://docs.python.org/library/tarfile.html -- -- I just want to LIVE while I'm alive. AB -- http://mail.python.org/mailman/listinfo/python-list
Re: using subprocess module in Python CGI
Thank you for the prompt response. Yeah, I missed out one line at the end of the error, the whole of which is: Traceback (most recent call last): File process.py, line 18, in module retval = subprocess.call(comd, 0, None, None, outptr, errptr) File /usr/lib/python2.5/subprocess.py, line 443, in call return Popen(*popenargs, **kwargs).wait() File /usr/lib/python2.5/subprocess.py, line 593, in __init__ errread, errwrite) File /usr/lib/python2.5/subprocess.py, line 1135, in _execute_child raise child_exception OSError: [Errno 2] No such file or directory Looking forward to any kind of help or suggestion in this regard. Thanks. On Tue, Dec 23, 2008 at 7:00 AM, Chris Rebert c...@rebertia.com wrote: On Mon, Dec 22, 2008 at 2:02 AM, ANURAG BAGARIA anurag.baga...@gmail.com wrote: Hello, I am a Python Newbie and would like to call a short python script via browser using a CGI script, but initially I am trying to call the same python script directly through python command line. The script intends to perform a few command line in a pipe and I have written the script (a short one) as follows. #!/usr/bin/python import cgi, string, os, sys, cgitb, commands, subprocess import posixpath, macpath #file = x.tar.gz #comd = tar -xf %s % (file) #os.system(comd) #commands.getoutput('tar -xf x.tar.gz | cd demo; cp README ../') comd = [\ tar -xf x.tar.gz, \ cd demo, \ cp README ../, \ ] outFile = os.path.join(os.curdir, output.log) outptr = file(outFile, w) errFile = os.path.join(os.curdir, error.log) errptr = file(errFile, w) retval = subprocess.call(comd, 0, None, None, outptr, errptr) errptr.close() outptr.close() if not retval == 0: errptr = file(errFile, r) errData = errptr.read() errptr.close() raise Exception(Error executing command: + repr(errData)) but after trying to execute this independently, I get the following error which I am unable to interpret : Traceback (most recent call last): File process.py, line 18, in module retval = subprocess.call(comd, 0, None, None, outptr, errptr) File /usr/lib/python2.5/subprocess.py, line 443, in call return Popen(*popenargs, **kwargs).wait() File /usr/lib/python2.5/subprocess.py, line 593, in __init__ errread, errwrite) File /usr/lib/python2.5/subprocess.py, line 1135, in _execute_child raise child_exception There should be at least one more line in this traceback, and that line is the most important one. People will need that line to help you with your problem. Cheers, Chris -- Follow the path of the Iguana... http://rebertia.com -- I just want to LIVE while I'm alive. AB -- http://mail.python.org/mailman/listinfo/python-list
Re: using subprocess module in Python CGI
ANURAG BAGARIA wrote: Hello, I am a Python Newbie and would like to call a short python script via browser using a CGI script, but initially I am trying to call the same python script directly through python command line. The script intends to perform a few command line in a pipe and I have written the script (a short one) as follows. #!/usr/bin/python import cgi, string, os, sys, cgitb, commands, subprocess import posixpath, macpath #file = x.tar.gz #comd = tar -xf %s % (file) #os.system(comd) #commands.getoutput('tar -xf x.tar.gz | cd demo; cp README ../') comd = [\ tar -xf x.tar.gz, \ cd demo, \ cp README ../, \ ] That's not how subprocess.call() works. You're trying to run an executable called tar -xf x.tar.gz, passing it the arguments cd demo and cp README ../. outFile = os.path.join(os.curdir, output.log) outptr = file(outFile, w) errFile = os.path.join(os.curdir, error.log) errptr = file(errFile, w) retval = subprocess.call(comd, 0, None, None, outptr, errptr) errptr.close() outptr.close() if not retval == 0: errptr = file(errFile, r) errData = errptr.read() errptr.close() raise Exception(Error executing command: + repr(errData)) but after trying to execute this independently, I get the following error which I am unable to interpret : Traceback (most recent call last): File process.py, line 18, in module retval = subprocess.call(comd, 0, None, None, outptr, errptr) File /usr/lib/python2.5/subprocess.py, line 443, in call return Popen(*popenargs, **kwargs).wait() File /usr/lib/python2.5/subprocess.py, line 593, in __init__ errread, errwrite) File /usr/lib/python2.5/subprocess.py, line 1135, in _execute_child raise child_exception Could someone suggest where am I going wrong and if corrected, what is the probability of this script being compatible with being called through the browser. Thanking you people in advance. Well, you'd need to output something, but otherwise, sure, why not? print Content-Type: text/html print print html.../html Regards. Why do you even need to use subprocess to do this? All it's doing is extracting the README file from a tarball, right? You can use the tarfile module for that. http://docs.python.org/library/tarfile.html -- -- http://mail.python.org/mailman/listinfo/python-list
using subprocess module in Python CGI
Hello, I am a Python Newbie and would like to call a short python script via browser using a CGI script, but initially I am trying to call the same python script directly through python command line. The script intends to perform a few command line in a pipe and I have written the script (a short one) as follows. #!/usr/bin/python import cgi, string, os, sys, cgitb, commands, subprocess import posixpath, macpath #file = x.tar.gz #comd = tar -xf %s % (file) #os.system(comd) #commands.getoutput('tar -xf x.tar.gz | cd demo; cp README ../') comd = [\ tar -xf x.tar.gz, \ cd demo, \ cp README ../, \ ] outFile = os.path.join(os.curdir, output.log) outptr = file(outFile, w) errFile = os.path.join(os.curdir, error.log) errptr = file(errFile, w) retval = subprocess.call(comd, 0, None, None, outptr, errptr) errptr.close() outptr.close() if not retval == 0: errptr = file(errFile, r) errData = errptr.read() errptr.close() raise Exception(Error executing command: + repr(errData)) but after trying to execute this independently, I get the following error which I am unable to interpret : Traceback (most recent call last): File process.py, line 18, in module retval = subprocess.call(comd, 0, None, None, outptr, errptr) File /usr/lib/python2.5/subprocess.py, line 443, in call return Popen(*popenargs, **kwargs).wait() File /usr/lib/python2.5/subprocess.py, line 593, in __init__ errread, errwrite) File /usr/lib/python2.5/subprocess.py, line 1135, in _execute_child raise child_exception Could someone suggest where am I going wrong and if corrected, what is the probability of this script being compatible with being called through the browser. Thanking you people in advance. Regards. -- I just want to LIVE while I'm alive. AB -- http://mail.python.org/mailman/listinfo/python-list
Re: using subprocess module in Python CGI
On Mon, Dec 22, 2008 at 2:02 AM, ANURAG BAGARIA anurag.baga...@gmail.com wrote: Hello, I am a Python Newbie and would like to call a short python script via browser using a CGI script, but initially I am trying to call the same python script directly through python command line. The script intends to perform a few command line in a pipe and I have written the script (a short one) as follows. #!/usr/bin/python import cgi, string, os, sys, cgitb, commands, subprocess import posixpath, macpath #file = x.tar.gz #comd = tar -xf %s % (file) #os.system(comd) #commands.getoutput('tar -xf x.tar.gz | cd demo; cp README ../') comd = [\ tar -xf x.tar.gz, \ cd demo, \ cp README ../, \ ] outFile = os.path.join(os.curdir, output.log) outptr = file(outFile, w) errFile = os.path.join(os.curdir, error.log) errptr = file(errFile, w) retval = subprocess.call(comd, 0, None, None, outptr, errptr) errptr.close() outptr.close() if not retval == 0: errptr = file(errFile, r) errData = errptr.read() errptr.close() raise Exception(Error executing command: + repr(errData)) but after trying to execute this independently, I get the following error which I am unable to interpret : Traceback (most recent call last): File process.py, line 18, in module retval = subprocess.call(comd, 0, None, None, outptr, errptr) File /usr/lib/python2.5/subprocess.py, line 443, in call return Popen(*popenargs, **kwargs).wait() File /usr/lib/python2.5/subprocess.py, line 593, in __init__ errread, errwrite) File /usr/lib/python2.5/subprocess.py, line 1135, in _execute_child raise child_exception There should be at least one more line in this traceback, and that line is the most important one. People will need that line to help you with your problem. Cheers, Chris -- Follow the path of the Iguana... http://rebertia.com -- http://mail.python.org/mailman/listinfo/python-list
Permission Issues in python cgi scripts on Apache 2.2 on OSX Leopard
Using Apache 2.2 on my local OSX machine, I;ve set up a virtual host to serve a directory that a project of mine is in. In this directory, I have some python .cgi scripts that I use to dynamically generated locally-used html code. In several places,scripts that work fine when not run as .cgi scripts via the webserver (but just as regular .py scripts in the Python interpreter) break when run by Apache because of what look like permissions related issues. Specifically: 1) When a script attempts to make a directory, it fails to do so unless writing is enabled on the superdirectory for all users, not just owner or group. I see a permission denied error via the cgitb output. and, 2) Some operating system stat modification functions, like os.utim, fail -- with the error message being that Operation is Not Permitted.I've put permissions to 777 for all the involved files but to no avail. (Am I right in thinking that this problem is also a permissions issue? I know the first one is, because the error message says so explicitly.) My computer is running off-line and this only ever going to be a local development task. So, my basic question is: is there some way, for the directories that I'm serving, to turn of all the permissions protections whatsoever? E.g. to run my cgi scripts as if the process running the scripts had all root privileges? And so that I can run scripts via cgi without having to worry about problems like the Operation Not Permitted Errror? (I want to be able to take advantage of using pythong for dynamic web-page generation without worrying about permission and security issues, since these files will never be near anything online.) I've tried to do things like put the proper things in my Apache configuration files (e.g the virtual host conf fil, the httpd.conf file, etc...), but this failed to achieve my goal. I apologize if I'm sending this mail to the wrong list, Thanks, Dan -- http://mail.python.org/mailman/listinfo/python-list
Problems with running Python CGI Scripts
Hey guys. Im having problems running a python cgi. Im using the example code from: http://www.python.org/doc/essays/pp...east/sld041.htm as writen by Van Rossum himself I can get the script to run the python script but all that happens is that the black python box appears then disapears, the html that the python scripts should generate is never output. My html is: htmlhead meta http-equiv=Content-Type content=text/html; charset=windows-1252 titleA Typical HTML form/title/head body p align=centerubfont size=5A Typical HTML form/font/b/u/p p align=centerfont size=1 color=#FF*Test CGI script and HTML to test server for correct running of python cgi scripting/font/p form method='GET' action='http://www.fisherphotographics.co.uk/testcgia.pyc' p align=centerYour First Name: input type='text' name='firstname' size=20 p align=centerYour Last Name: input type='text' name='lastname' size=20 p align=centerClick here to submit form: input type='submit' value='Yeah!' input type='hidden' name='session' value='1f9a2' /form/body/html This is calling the pyc file of the python script. I dont understand why if i call the py file itself all i get returned is the plain text of the python file. The python script is: #!/usr/local/bin/python import cgi def main(): print Content-type: text/html\n form = cgi.FieldStorage() if form.has_key(firstname) and form[firstname].value != : #if form has an object called firstname and the value is not an empty string print h1Hello, form[firstname].value, /h1 else: print h1Error! Please enter first name./h1 main() If you need to see what happens then follow this link: http://www.fisherphotographics.co.uk/testhtml1.htm The python file has come directly from the example so i must me doing something wrong. I have all the correct permissions etc Thanks very much Ed Fisher -- http://mail.python.org/mailman/listinfo/python-list
Re: Problems with running Python CGI Scripts
En Wed, 03 Sep 2008 05:29:39 -0300, Edward FISHER [EMAIL PROTECTED] escribi�: I can get the script to run the python script but all that happens is that the black python box appears then disapears, the html that the python scripts should generate is never output. [...] This is calling the pyc file of the python script. I dont understand why if i call the py file itself all i get returned is the plain text of the python file. That's a server setting (Apache or whatever) - make sure it is configured to *execute* the script. The python script is: #!/usr/local/bin/python import cgi def main(): print Content-type: text/html\n I hope this is just the way you posted your message, but remember that in Python indentation is important. The above code isn't valid. Once you are sure that your script doesn't have syntax errors, add this lines on the top to help debugging: import cgitb; cgitb.enable() -- Gabriel Genellina -- http://mail.python.org/mailman/listinfo/python-list
Please recommend a blog program written using python-cgi
Hi, I'm a newbie to Python, but I think it won't be too hard to learn. A few days ago I registered Google App Engine, it only support Python 2.5. I want to set my blog on it soon. But it's not easy for me to finish it in a short time since I'm not very familiar with Python, so I want find some codes available, throught reading the code, I can learn something from it. I know there are many frameworks for web development, but I just want the code using traditional CGI method, it's easy to use and it doesn't require any additional knowledge about framework. I need a simple example (support basic function of a weblog, easy to revise) but not a complicated huge monster (I don't think such a thing now exists). I find some online course, i.e. http://www.upriss.org.uk/python/PythonCourse.html http://www.python.org/doc/essays/ppt/sd99east/index.htm but I didn't find the code needed, could anyone recommend it to me? thanks. -- http://mail.python.org/mailman/listinfo/python-list
Re: Please recommend a blog program written using python-cgi
Royt wrote: Hi, I'm a newbie to Python, but I think it won't be too hard to learn. A few days ago I registered Google App Engine, it only support Python 2.5. I want to set my blog on it soon. But it's not easy for me to finish it in a short time since I'm not very familiar with Python, so I want find some codes available, throught reading the code, I can learn something from it. I know there are many frameworks for web development, but I just want the code using traditional CGI method, it's easy to use and it doesn't require any additional knowledge about framework. I need a simple example (support basic function of a weblog, easy to revise) but not a complicated huge monster (I don't think such a thing now exists). I guess you are out of luck. Usually people use frameworks because it *does* make work easier. AFAIK google engine supports Django. So try aquaint you with that - and I bet there are Django-based blogs out there. Diez -- http://mail.python.org/mailman/listinfo/python-list
Re: Please recommend a blog program written using python-cgi
On Jun 12, 4:58 pm, Diez B. Roggisch [EMAIL PROTECTED] wrote: Royt wrote: Hi, I'm a newbie to Python, but I think it won't be too hard to learn. A few days ago I registered Google App Engine, it only support Python 2.5. I want to set my blog on it soon. But it's not easy for me to finish it in a short time since I'm not very familiar with Python, so I want find some codes available, throught reading the code, I can learn something from it. I know there are many frameworks for web development, but I just want the code using traditional CGI method, it's easy to use and it doesn't require any additional knowledge about framework. I need a simple example (support basic function of a weblog, easy to revise) but not a complicated huge monster (I don't think such a thing now exists). I guess you are out of luck. Usually people use frameworks because it *does* make work easier. AFAIK google engine supports Django. So try aquaint you with that - and I bet there are Django-based blogs out there. Diez Oh, I'm out of luck, maybe it means few code of python-cgi blog exists. So I'd like to find a django blog, sf.net should at least have a piece of code, I guess. Of course, if someone could tell which project is sipmle but pragmatic, that's better. -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI Upload from Server Status
On Sat, Jun 7, 2008 at 12:50 AM, Derek Tracy [EMAIL PROTECTED] wrote: I am trying to create a simple python cgi app that allows the user to kick off an ftp from the server the cgi is on to another server; I have that piece working using ftplib but since the files in question are usually very large (500mb to 2gb) in size I want to be able to display some sort of status to the user, preferrably a progress bar of some sort. You'll need some AJAX progress bar (hint: google for this term ;-) that will be getting updates from the server or request an update every second or so. The question is if your upload code can provide progress tracking? If it's just a call to some xyz.upload(/here/is/my-500M-file.bin) that only returns after several minutes of uploading without giving you any updates on how fast things go you're probably out of luck. OTOH if it can do e.g.callbacks for progress reporting or if it can run in a separate thread that you could query somehow you can hook that to that AJAX thing of your choice. JDJ -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI Upload from Server Status
On Fri, Jun 6, 2008 at 9:16 AM, John Dohn [EMAIL PROTECTED] wrote: On Sat, Jun 7, 2008 at 12:50 AM, Derek Tracy [EMAIL PROTECTED] wrote: I am trying to create a simple python cgi app that allows the user to kick off an ftp from the server the cgi is on to another server; I have that piece working using ftplib but since the files in question are usually very large (500mb to 2gb) in size I want to be able to display some sort of status to the user, preferrably a progress bar of some sort. You'll need some AJAX progress bar (hint: google for this term ;-) that will be getting updates from the server or request an update every second or so. The question is if your upload code can provide progress tracking? If it's just a call to some xyz.upload(/here/is/my-500M-file.bin) that only returns after several minutes of uploading without giving you any updates on how fast things go you're probably out of luck. OTOH if it can do e.g.callbacks for progress reporting or if it can run in a separate thread that you could query somehow you can hook that to that AJAX thing of your choice. JDJ -- http://mail.python.org/mailman/listinfo/python-list I will look for the AJAX Progress Bar, but I will admit I have never touched AJAX and haven't written javascript in years. I patched Pythons ftplib.py storbinary() to send callbacks to the specified method, so I have the callbacks locked down. The thing to note is that this app isn't allowing the user to upload to the server the cgi is on but rather allowing the user to kick off an ftp process on the server to another server. Would there be a way to do this with python cgi and automatically append or update information on the page it is displaying? -- - Derek Tracy [EMAIL PROTECTED] - -- http://mail.python.org/mailman/listinfo/python-list
Re: argument to python cgi script
En Wed, 09 Apr 2008 11:14:33 -0300, syed mehdi [EMAIL PROTECTED] escribió: Hi Guys, If someone can help me in telling how can i pass arguments to python cgi script then that will be good. like if i want to pass some argument to my remote python script, by calling something like: http://localhost/cgi-bin/test.py?some\ argument. What is the correct way of sending arguments in this way, and how can i decode/receive them in test.py Encoding: py args = {'some': 'argument', 'x': 1, 'z': 23.4} py import urllib py urllib.urlencode(args) 'x=1z=23.4some=argument' You can then use urllib.urlopen or urllib2.urlopen to send the HTTP request and retrieve the response. http://docs.python.org/lib/module-urllib.html In the server side, use cgi.FieldStorage: form = cgi.FieldStorage() x = form.getfirst('x', 0) # '1' y = form.getfirst('y', 0) # '0' z = form.getfirst('z', 0) # '23.4' http://docs.python.org/lib/module-cgi.html -- Gabriel Genellina -- http://mail.python.org/mailman/listinfo/python-list
argument to python cgi script
Hi Guys, If someone can help me in telling how can i pass arguments to python cgi script then that will be good. like if i want to pass some argument to my remote python script, by calling something like: http://localhost/cgi-bin/test.py?some\ argument. What is the correct way of sending arguments in this way, and how can i decode/receive them in test.py Thanks Regards Syed -- http://mail.python.org/mailman/listinfo/python-list
Re: Python - CGI - XML - XSD
Sorry, it was really late when i wrote this post. The file is an XSL file. It defines HTML depending on what appears in the XML document. Then the content-type might be the culprit, yes. But testing so would have been faster than waiting for answers here... Diez -- http://mail.python.org/mailman/listinfo/python-list
Re: Python - CGI - XML - XSD
xkenneth wrote: Hi All, Quick question. I've got an XML schema file (XSD) that I've written, that works fine when my data is present as an XML file. (Served out by apache2.) Now when I call python as a cgi script, and tell it print out all of the same XML, also served up by apache2, the XSD is not applied. Does this have to do with which content type i defined when printing the xml to stdout? Who's applying the stylesheet? The browser, some application like XmlSpy or what? Diez -- http://mail.python.org/mailman/listinfo/python-list
Re: Python - CGI - XML - XSD
On Mar 12, 6:32 am, Diez B. Roggisch [EMAIL PROTECTED] wrote: xkenneth wrote: Hi All, Quick question. I've got an XML schema file (XSD) that I've written, that works fine when my data is present as an XML file. (Served out by apache2.) Now when I call python as a cgi script, and tell it print out all of the same XML, also served up by apache2, the XSD is not applied. Does this have to do with which content type i defined when printing the xml to stdout? Who's applying the stylesheet? The browser, some application like XmlSpy or what? Diez The browser. Regards, Kenneth Miller -- http://mail.python.org/mailman/listinfo/python-list
Re: Python - CGI - XML - XSD
xkenneth wrote: On Mar 12, 6:32 am, Diez B. Roggisch [EMAIL PROTECTED] wrote: xkenneth wrote: Hi All, Quick question. I've got an XML schema file (XSD) that I've written, that works fine when my data is present as an XML file. (Served out by apache2.) Now when I call python as a cgi script, and tell it print out all of the same XML, also served up by apache2, the XSD is not applied. Does this have to do with which content type i defined when printing the xml to stdout? Who's applying the stylesheet? The browser, some application like XmlSpy or what? The browser. Well, why should it validate your file? Browsers don't do that just for fun. Stefan -- http://mail.python.org/mailman/listinfo/python-list
Re: Python - CGI - XML - XSD
On Mar 12, 11:58 am, Stefan Behnel [EMAIL PROTECTED] wrote: xkenneth wrote: On Mar 12, 6:32 am, Diez B. Roggisch [EMAIL PROTECTED] wrote: xkenneth wrote: Hi All, Quick question. I've got an XML schema file (XSD) that I've written, that works fine when my data is present as an XML file. (Served out by apache2.) Now when I callpythonas a cgi script, and tell it print out all of the same XML, also served up by apache2, the XSDis not applied. Does this have to do with which content type i defined when printing the xml to stdout? Who's applying the stylesheet? The browser, some application like XmlSpy or what? The browser. Well, why should it validate your file? Browsers don't do that just for fun. Stefan Sorry, it was really late when i wrote this post. The file is an XSL file. It defines HTML depending on what appears in the XML document. Regards, Kenneth Miller -- http://mail.python.org/mailman/listinfo/python-list
Python - CGI - XML - XSD
Hi All, Quick question. I've got an XML schema file (XSD) that I've written, that works fine when my data is present as an XML file. (Served out by apache2.) Now when I call python as a cgi script, and tell it print out all of the same XML, also served up by apache2, the XSD is not applied. Does this have to do with which content type i defined when printing the xml to stdout? Regards, Kenneth Miller -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI Webpage with an Image
Is the cgi script in the same directory? The user's browser looks for the jpg relative to the URL it used to get the page, which in the case of the CGI script is the path to the script, not the path to the html file. No the CGI script is in a different folder, I could move everything to the same folder I guess. If server logs are hard to get or read, try my runcgi.py script: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/550822 Thanks, I will try this. Rod -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI Webpage with an Image
rodmc wrote: [...] Python: f = open(finish.html) doc = f.read() f.close() print doc You might need to start with: print Content-Type: text/html print Is finish.html in the right place? When you browse to your script, can you see that you're getting the html? HTML: [...] PIMG SRC=banner.jpg NAME=graphics1 ALIGN=LEFT WIDTH=799 I suspect a server configuration and/or resource placement problem. The image has a relative URL, and the user's browser will look for it on the same path that it used to get the resource served by the cgi script, up to last '/'. Is banner.jpg in the right place, and is your web server configured to treat everything in that directory as a cgi script, and thus trying to execute the jpg? If one of those is the problem, just move banner.jpg, and/or change the relative URL. For example, SRC=../banner.jpg will cause the browser to look for the jpg one directory above. Failing that, can look at the web server's log? -- --Bryan -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI Webpage with an Image
Hi, Thanks for your very quick response. I have played around a bit more so that both the image and HTML file are in the public_html folder. They are called via python using a relative URL, and have permissions set to 755. Within the HTML file the image is accessed using just banner.jpg. The actual page displays ok except for the image - so it has the same problem as before. However when the same page is displayed without running through a CGI it displays perfectly. Kind regards, rod On Mar 6, 11:46 am, Bryan Olson [EMAIL PROTECTED] wrote: rodmc wrote: [...] Python: f = open(finish.html) doc = f.read() f.close() print doc You might need to start with: print Content-Type: text/html print Is finish.html in the right place? When you browse to your script, can you see that you're getting the html? HTML: [...] PIMG SRC=banner.jpg NAME=graphics1 ALIGN=LEFT WIDTH=799 I suspect a server configuration and/or resource placement problem. The image has a relative URL, and the user's browser will look for it on the same path that it used to get the resource served by the cgi script, up to last '/'. Is banner.jpg in the right place, and is your web server configured to treat everything in that directory as a cgi script, and thus trying to execute the jpg? If one of those is the problem, just move banner.jpg, and/or change the relative URL. For example, SRC=../banner.jpg will cause the browser to look for the jpg one directory above. Failing that, can look at the web server's log? -- --Bryan -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI Webpage with an Image
Hi, Good point, some code samples is probably required. Please note that for reasons of integration with another system I am not using a templating system. Anyway I have copied them below: Python: f = open(finish.html) doc = f.read() f.close() print doc HTML: !DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.0 Transitional//EN HTML HEAD META HTTP-EQUIV=CONTENT-TYPE CONTENT=text/html; charset=windows-1252 TITLE/TITLE /HEAD BODY LANG=en-GB DIR=LTR PIMG SRC=banner.jpg NAME=graphics1 ALIGN=LEFT WIDTH=799 HEIGHT=137 BORDER=0BR CLEAR=LEFTBRBR /P PThank you for uploading your file/P /BODY /HTML -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI Webpage with an Image
rodmc wrote: [...] I have played around a bit more so that both the image and HTML file are in the public_html folder. They are called via python using a relative URL, and have permissions set to 755. Within the HTML file the image is accessed using just banner.jpg. The actual page displays ok except for the image - so it has the same problem as before. However when the same page is displayed without running through a CGI it displays perfectly. Is the cgi script in the same directory? The user's browser looks for the jpg relative to the URL it used to get the page, which in the case of the CGI script is the path to the script, not the path to the html file. If server logs are hard to get or read, try my runcgi.py script: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/550822 -- --Bryan -- http://mail.python.org/mailman/listinfo/python-list
Python CGI Webpage with an Image
Hi, I have a set of CGI scripts set up and in one page (which is stored in an HTML file then printed via a python CGI) there is an image. However the image never displays, can anyone recommend a way round this problem? Kind regards, rod -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI Webpage with an Image
Hello Rod, I have a set of CGI scripts set up and in one page (which is stored in an HTML file then printed via a python CGI) there is an image. However the image never displays, can anyone recommend a way round this problem? We need more information, can you post a code snippet? error page? ... My *guess* is that the web server don't know how to server the image (wrong path configuration?) HTH, -- Miki [EMAIL PROTECTED] http://pythonwise.blogspot.com -- http://mail.python.org/mailman/listinfo/python-list
Python CGI script and CSS style sheet
All: I'm working with a Python CGI script that I am trying to use with an external CSS (Cascading Style Sheet) and it is not reading it from the web server. The script runs fine minus the CSS formatting. Does anyone know if this will work within a Python CGI? It seems that line 18 is not being read properly. One more thing. I tested this style sheet with pure html code (no python script) and everything works great. Listed below is a modified example. ++ 1#!/usr/bin/python 2 3import cgi 4 5print Content-type: text/html\n 6tag_form = cgi.FieldStorage() 7 8head_open_close = 9head 10 meta http-equiv=content-type content=text/html; charset=UTF-8 11 titleTag Sheet/title 12 link rel=stylesheet type=text/css href=central.css 13 /head 14 15 body_open = 16 body 17 !-- tag page -- 18 table class=tag-sheet 19tbody 20 Thank you, Christopher -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI script and CSS style sheet
I'm working with a Python CGI script that I am trying to use with an external CSS (Cascading Style Sheet) and it is not reading it from the web server. The script runs fine minus the CSS formatting. Does anyone know if this will work within a Python CGI? It seems that line 18 is not being read properly. One more thing. I tested this style sheet with pure html code (no python script) and everything works great. Listed below is a modified example. ++ 1#!/usr/bin/python 2 3import cgi 4 5print Content-type: text/html\n The answer is it depends. Mostly on the configuration of your web-server. Assuming you're serving out of a cgi-bin/ directory, you'd be referencing http://example.com/cgi-bin/foo.py If your webserver (apache, lighttpd, whatever) has been configured for this directory to return contents of non-executable items, your above code will reference http://example.com/cgi-bin/central.css and so you may be able to just drop the CSS file in that directory. However, I'm fairly certain that Apache can be (and often is) configured to mark folders like this as execute only, no file-reading. If so, you'll likely get some sort of Denied message back if you fetch the CSS file via HTTP. A better way might be to reference the CSS file as /media/central.css 12 link rel=stylesheet type=text/css href=/media/central.css / and then put it in a media folder which doesn't have the execute-only/no-read permission set. Another (less attractive) alternative is to have your CGI sniff the incoming request, so you can have both http://example.com/cgi-bin/foo.py http://example.com/cgi-bin/foo.py?file=css using the 'file' GET parameter to return the CSS file instead of your content. I'd consider this ugly unless deploy-anywhere is needed, in which case it's not so bad because the deployment is just the one .py file (and optionally an external CSS file that it reads and dumps). -tkc -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI script and CSS style sheet
Tim, Thanks for the information and I'll work with you suggestions. Also, I will let you know what I find. Thanks again, Christopher Tim Chase wrote: I'm working with a Python CGI script that I am trying to use with an external CSS (Cascading Style Sheet) and it is not reading it from the web server. The script runs fine minus the CSS formatting. Does anyone know if this will work within a Python CGI? It seems that line 18 is not being read properly. One more thing. I tested this style sheet with pure html code (no python script) and everything works great. Listed below is a modified example. ++ 1#!/usr/bin/python 2 3import cgi 4 5print Content-type: text/html\n The answer is it depends. Mostly on the configuration of your web-server. Assuming you're serving out of a cgi-bin/ directory, you'd be referencing http://example.com/cgi-bin/foo.py If your webserver (apache, lighttpd, whatever) has been configured for this directory to return contents of non-executable items, your above code will reference http://example.com/cgi-bin/central.css and so you may be able to just drop the CSS file in that directory. However, I'm fairly certain that Apache can be (and often is) configured to mark folders like this as execute only, no file-reading. If so, you'll likely get some sort of Denied message back if you fetch the CSS file via HTTP. A better way might be to reference the CSS file as /media/central.css 12 link rel=stylesheet type=text/css href=/media/central.css / and then put it in a media folder which doesn't have the execute-only/no-read permission set. Another (less attractive) alternative is to have your CGI sniff the incoming request, so you can have both http://example.com/cgi-bin/foo.py http://example.com/cgi-bin/foo.py?file=css using the 'file' GET parameter to return the CSS file instead of your content. I'd consider this ugly unless deploy-anywhere is needed, in which case it's not so bad because the deployment is just the one .py file (and optionally an external CSS file that it reads and dumps). -tkc -- http://mail.python.org/mailman/listinfo/python-list
Re: pipes python cgi and gnupg
On Dec 28 2007, 7:07 pm, [EMAIL PROTECTED] wrote: snip form = cgi.FieldStorage() if not form.has_key(pass): print Enter password filename = test.gpg pass = form.getvalue(pass).strip() os.system(gpg --version gpg.out) os.system(echo %s | gpg --batch --password-fd 0 --decrypt %s d.out %(pass,filename)) The last time I checked, pass is a reserved word in Python. Since you are using a reserved word as a variable, maybe that's what's messing with your output? -- http://mail.python.org/mailman/listinfo/python-list
Python CGI - Presenting a zip file to user
Hi all, I'm working on a cgi script that zips up files and presents the zip file to the user for download. It works fine except for the fact that I have to overwrite the file using the same filename because I'm unable to delete it after it's downloaded. The reason for this is because after sending Location: urlofzipfile the script stops processing and I can't call a file operation to delete the file. Thus I constantly have a tmp.zip file which contains the previously requested files. Can anyone think of a way around this? Is there a better way to create the zip file and present it for download on-the-fly than editing the Location header? I thought about using Content-Type, but was unable to think of a way to stream the file out. Any help is appreciated, much thanks! - James -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI - Presenting a zip file to user
On Jan 3, 7:50 am, jwwest [EMAIL PROTECTED] wrote: Hi all, I'm working on a cgi script that zips up files and presents the zip file to the user for download. It works fine except for the fact that I have to overwrite the file using the same filename because I'm unable to delete it after it's downloaded. The reason for this is because after sending Location: urlofzipfile the script stops processing and I can't call a file operation to delete the file. Thus I constantly have a tmp.zip file which contains the previously requested files. Can anyone think of a way around this? Is there a better way to create the zip file and present it for download on-the-fly than editing the Location header? I thought about using Content-Type, but was unable to think of a way to stream the file out. Any help is appreciated, much thanks! - James import sys, cgi, zipfile, os from StringIO import StringIO try: # Windows only import msvcrt msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY) except ImportError: pass HEADERS = '\r\n'.join( [ Content-type: %s;, Content-Disposition: attachment; filename=%s, Content-Title: %s, Content-Length: %i, \r\n, # empty line to end headers ] ) if __name__ == '__main__': os.chdir(r'C:\Documents and Settings\Justin Ezequiel\Desktop') files = [ '4412_ADS_or_SQL_Server.pdf', 'Script1.py', 'html_files.zip', 'New2.html', ] b = StringIO() z = zipfile.ZipFile(b, 'w', zipfile.ZIP_DEFLATED) for n in files: z.write(n, n) z.close() length = b.tell() b.seek(0) sys.stdout.write( HEADERS % ('application/zip', 'test.zip', 'test.zip', length) ) sys.stdout.write(b.read()) b.close() -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI - Presenting a zip file to user
On Jan 2, 8:56 pm, Justin Ezequiel [EMAIL PROTECTED] wrote: On Jan 3, 7:50 am, jwwest [EMAIL PROTECTED] wrote: Hi all, I'm working on a cgi script that zips up files and presents the zip file to the user for download. It works fine except for the fact that I have to overwrite the file using the same filename because I'm unable to delete it after it's downloaded. The reason for this is because after sending Location: urlofzipfile the script stops processing and I can't call a file operation to delete the file. Thus I constantly have a tmp.zip file which contains the previously requested files. Can anyone think of a way around this? Is there a better way to create the zip file and present it for download on-the-fly than editing the Location header? I thought about using Content-Type, but was unable to think of a way to stream the file out. Any help is appreciated, much thanks! - James import sys, cgi, zipfile, os from StringIO import StringIO try: # Windows only import msvcrt msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY) except ImportError: pass HEADERS = '\r\n'.join( [ Content-type: %s;, Content-Disposition: attachment; filename=%s, Content-Title: %s, Content-Length: %i, \r\n, # empty line to end headers ] ) if __name__ == '__main__': os.chdir(r'C:\Documents and Settings\Justin Ezequiel\Desktop') files = [ '4412_ADS_or_SQL_Server.pdf', 'Script1.py', 'html_files.zip', 'New2.html', ] b = StringIO() z = zipfile.ZipFile(b, 'w', zipfile.ZIP_DEFLATED) for n in files: z.write(n, n) z.close() length = b.tell() b.seek(0) sys.stdout.write( HEADERS % ('application/zip', 'test.zip', 'test.zip', length) ) sys.stdout.write(b.read()) b.close() Thanks! That worked like an absolute charm. Just a question though. I'm curious as to why you have to use the msvcrt bit on Windows. If I were to port my app to *NIX, would I need to do anything similar? - James -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI - Presenting a zip file to user
On Jan 3, 1:35 pm, jwwest [EMAIL PROTECTED] wrote: Thanks! That worked like an absolute charm. Just a question though. I'm curious as to why you have to use the msvcrt bit on Windows. If I were to port my app to *NIX, would I need to do anything similar? - James not needed for *NIX as *NIX does not have a notion of binary- vs text- mode I seem to recall not needing the msvcrt stuff a while ago on Windows but recently needed it again for Python CGI on IIS -- http://mail.python.org/mailman/listinfo/python-list
pipes python cgi and gnupg
I think this is more a GnuPG issue than a Python issue, but I wanted to post it here as well in case others could offer suggestions: I can do this from a python cgi script from a browser: os.system(gpg --version gpg.out) However, I cannot do this from a browser: os.system(echo %s | gpg --batch --password-fd 0 -d %s d.out %(pass, filename)) The output file is produced, but it's zero byte. I want the decrypted file's content, but the pipe seems to mess things up. The script works fine when executed from command line. The output file is produced as expected. When executed by a browser, it does not work as expected... only produces a zero byte output file. Any tips? I've googled a bit and experimented for a few nights, still no go. Thanks, Brad Here's the entire script: #!/usr/local/bin/python import cgi import cgitb; cgitb.enable() import os import tempfile print Content-Type: text/html print print TITLET/TITLE print H1H/H1 form = cgi.FieldStorage() if not form.has_key(pass): print Enter password filename = test.gpg pass = form.getvalue(pass).strip() os.system(gpg --version gpg.out) os.system(echo %s | gpg --batch --password-fd 0 --decrypt %s d.out %(pass,filename)) -- http://mail.python.org/mailman/listinfo/python-list
Re: dynamically generating temporary files through python/cgi (ot)
Miss Pfeffe wrote: How do you make a python out of a banana?! You kiss it just long enough - else it turns into a frog, so be careful! -- http://mail.python.org/mailman/listinfo/python-list
dynamically generating temporary files through python/cgi
How do you make a python out of a banana?!-- http://mail.python.org/mailman/listinfo/python-list
Streaming files from python cgi
Hello, I am trying to create a cgi which downloads a pdf/tiff file from an ftpserver using ftplib. Everything works until this point. But, once the file has been retrieved, I want to be able to stream the file to the browser so that the user gets an option to save it, or open it with the necessary application. However, I am not able to figure out how this can be done. The code looks as follows: #!/usr/local/python2.1/bin/python import Path, cgi, sys, os from ftplib import FTP print content-type: application/pdf\n\n ftp = FTP(hostname, salil, passwd) try: ftp.cwd(/home/salil) except: print Could change directory on remote server sys.exit(1) f = open(temp.pdf, w) ftp.retrbinary(RETR O_F.pdf, f.write) f.close() f = open(temp.pdf, r) print f.read() I am using Apache 1.3 for this cgi. It would be great if someone can point out how this can be accomplished, or if there are any examples out there which I can refer to. Thanks, Salil. -- http://mail.python.org/mailman/listinfo/python-list
My first Python CGI (was: Coming from Perl)
In article [EMAIL PROTECTED], Amer Neely [EMAIL PROTECTED] wrote: Amer Neely wrote: TheFlyingDutchman wrote: On Sep 12, 5:30 pm, Amer Neely [EMAIL PROTECTED] wrote: I'm a complete newbie with Python, but have several years experience with Perl in a web environment. A question I have, if someone here is familiar with Perl, does Python have something like Perl's 'here document'? I've just searched and read some postings on generating HTML but they all seem to refer to various template utilities. Is this the only way, or am I missing something? I'm used to generating X/HTML by hand, which makes the here document in Perl ideal for me. Also, many times a client already existing HTML code that I can use in a script. -- Amer Neely w:www.webmechanic.softouch.on.ca/ Perl | MySQL programming for all data entry forms. Others make web sites. We make web sites work! I am not sure if this is what you are looking for, but Python has a special string with 3 quotes that I believe duplicates part of the functionality of a here document: myHmtlHeader = head attribute = abc titleMy Page/title /head print myHtmlHeader outputs: head attribute=abc titleMy Page/title /head Well, I have checked everything I can but I'm getting '500 Internal Server Error'. The log files aren't helpful: [Thu Sep 13 03:43:00 2007] [error] [client 24.235.184.39] Premature end of script headers: /home/softouch/public_html/cgi-bin/scratch/hello.py I can't even get it to run on my home PC running Apache + Win2K. Same error. My script: #!/usr/bin/python import cgitb; cgitb.enable(display=0, logdir=.) import sys sys.stderr = sys.stdout print Content-Type: text/html print print html body div align=centerfont style=font-family:verdana; size:18pxHello from Python/font/div br Goodbye. /body /html I should have added that it runs from the command line OK. . . . Yes, it should work fine. Do the things you'd do if it were Perl source: when you say it runs from the command line OK, do you mean invocation of /home/softouch/public_html/cgi-bin/scratch/hello.py gives sensible results? Does your Web server recognize that .py is a CGI extension? What are the permissions on /home/softouch/public_html/cgi-bin/scratch/hello.py? Might your server have an issue with Content-Type vs. Content-type? -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI and Browser timeout
Sebastian Bassi wrote: On 26 Apr 2007 14:48:29 -0700, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: In order to work around this problem, I started printing empty strings (i.e. print ) so that the browser does not timeout. How do you print something while doing the query and waiting for the results? I saw some pages that display something like: This page will be updated in X seconds to show the results (X is an estimated time depending of server load), after a JS countdown, it refresh itself and show the result or another This page will be updated in X seconds to show the results. The usual way is by client pull: send the content you want the user to see, and include a Refresh: header - the easiest way is to include a META tag in the html content head section like meta http-equiv=refresh content=N; URL=other-web-address So the page can continually check whether the user's job is finished, if it isn't just sending out the same content and then when it is printing the details. regards Steve -- Steve Holden+1 571 484 6266 +1 800 494 3119 Holden Web LLC/Ltd http://www.holdenweb.com Skype: holdenweb http://del.icio.us/steve.holden -- Asciimercial - Get Python in your .sig and on the web. Blog and lens holdenweb.blogspot.comsquidoo.com/pythonology tag items:del.icio.us/steve.holden/python All these services currently offer free registration! -- Thank You for Reading -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI and Browser timeout
Steve Holden wrote: Sebastian Bassi wrote: On 26 Apr 2007 14:48:29 -0700, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: In order to work around this problem, I started printing empty strings (i.e. print ) so that the browser does not timeout. How do you print something while doing the query and waiting for the results? I saw some pages that display something like: This page will be updated in X seconds to show the results (X is an estimated time depending of server load), after a JS countdown, it refresh itself and show the result or another This page will be updated in X seconds to show the results. The usual way is by client pull: send the content you want the user to see, and include a Refresh: header - the easiest way is to include a META tag in the html content head section like meta http-equiv=refresh content=N; URL=other-web-address So the page can continually check whether the user's job is finished, if it isn't just sending out the same content and then when it is printing the details. I should have pointed out that N is the number of seconds to wait before refreshing. regards Steve -- Steve Holden+1 571 484 6266 +1 800 494 3119 Holden Web LLC/Ltd http://www.holdenweb.com Skype: holdenweb http://del.icio.us/steve.holden -- Asciimercial - Get Python in your .sig and on the web. Blog and lens holdenweb.blogspot.comsquidoo.com/pythonology tag items:del.icio.us/steve.holden/python All these services currently offer free registration! -- Thank You for Reading -- http://mail.python.org/mailman/listinfo/python-list
Python CGI and Browser timeout
Hello, I am creating a simple cgi script which needs to retrieve and process a huge number of records from the database (more than 11,000) and write the results to a file on disk and display some results when processing is complete. However, nothing needs to be displayed while the processing is on. I was facing browser timeout issue due to the time it takes to process these records. In order to work around this problem, I started printing empty strings (i.e. print ) so that the browser does not timeout. Is there a better solution to avoid browser timeouts? Thanks, -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI and Browser timeout
En Thu, 26 Apr 2007 18:48:29 -0300, [EMAIL PROTECTED] escribió: I am creating a simple cgi script which needs to retrieve and process a huge number of records from the database (more than 11,000) and write the results to a file on disk and display some results when processing is complete. However, nothing needs to be displayed while the processing is on. I was facing browser timeout issue due to the time it takes to process these records. In order to work around this problem, I started printing empty strings (i.e. print ) so that the browser does not timeout. Is there a better solution to avoid browser timeouts? You could spawn another process or thread, reporting the progress somewhere. Then redirect to another page showing the progress (and auto-reloading itself each few seconds). When it detects that processing is complete, redirect to another page showing the final results. -- Gabriel Genellina -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI and Browser timeout
On 26 Apr 2007 14:48:29 -0700, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: In order to work around this problem, I started printing empty strings (i.e. print ) so that the browser does not timeout. How do you print something while doing the query and waiting for the results? I saw some pages that display something like: This page will be updated in X seconds to show the results (X is an estimated time depending of server load), after a JS countdown, it refresh itself and show the result or another This page will be updated in X seconds to show the results. -- Sebastián Bassi (セバスティアン) Diplomado en Ciencia y Tecnología. GPG Fingerprint: 9470 0980 620D ABFC BE63 A4A4 A3DE C97D 8422 D43D Club de la razón (www.clubdelarazon.org) -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI and Browser timeout
On 26 Apr 2007 14:48:29 -0700, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Is there a better solution to avoid browser timeouts? Raising timeout in Apache, by default is 300 seconds. Limiting jobs size (both in the html form and from script size since you should not trust on client validations). -- Sebastián Bassi (セバスティアン) Diplomado en Ciencia y Tecnología. GPG Fingerprint: 9470 0980 620D ABFC BE63 A4A4 A3DE C97D 8422 D43D Club de la razón (www.clubdelarazon.org) -- http://mail.python.org/mailman/listinfo/python-list
Re: Python CGI and Browser timeout
Thanks for the response. To further clarify the details: I am printing the empty strings in a for loop. So the processing happens in a loop when all the results from the query have been already retrieved and each record is now being processed inside the loop. I also update the display periodically with the total number of records processed(which is approximately after every 1/5th chunk of the total number of records in the result). Thanks, Salil Kulkarni On Apr 26, 6:01 pm, Sebastian Bassi [EMAIL PROTECTED] wrote: On 26 Apr 2007 14:48:29 -0700, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: In order to work around this problem, I started printing empty strings (i.e. print ) so that the browser does not timeout. How do you print something while doing the query and waiting for the results? I saw some pages that display something like: This page will be updated in X seconds to show the results (X is an estimated time depending of server load), after a JS countdown, it refresh itself and show the result or another This page will be updated in X seconds to show the results. -- Sebastián Bassi (セバスティアン) Diplomado en Ciencia y Tecnología. GPG Fingerprint: 9470 0980 620D ABFC BE63 A4A4 A3DE C97D 8422 D43D Club de la razón (www.clubdelarazon.org) -- http://mail.python.org/mailman/listinfo/python-list