views:

427

answers:

5

Say I want to run a simple Python script that is a web server. And I want to connect a browser to it that refreshes every N seconds, i.e. so the page is updated. How would I do that?

I assume the Python server script would generate some HTML that contains javascript that sleeps and forces a refresh? Or can the browser force a refresh?

Thanks in advance.

+9  A: 
<meta http-equiv="refresh" content="5" />

That would reload the page after 5 seconds.

Martin Clarke
Sorry, I'm a noob. :) Where does that go in the page? In the header?
Nick
Yep - in the header.
Martin Clarke
Okay, got this working and seems to work just fine. It's very simple what I'm doing: look at stats, output info, wait, repeat. Thanks.
Nick
+1  A: 

You could use the META-Tag for refresh or use javascript. But you have to take care that parameters in the URL are handled correctly and that you don't refresh POST actions if you don't intend to.

Patrick Cornelissen
A: 

Use meta refresh tag. Though I'd be very surprised if a web page would suddenly update by itself. Some AJAXy stuff will be much more usable.

Anton Gogolev
What would the AJAX stuff look like?
Nick
Anton Gogolev
+2  A: 

Put the following under

<meta http-equiv="refresh" content="5" />

This will refresh the page after 5 seconds.

Jonathan Parker
+5  A: 

Refreshing the page is quite an old method and is generally a more expensive in terms of bandwidth than simply updating specific parts of your page. The solutions presented here already will do what you want, but you should also try looking into dynamic updates, using AJAX. It's not too hard to grasp. Basically rather than the browser refreshing the entire page, you can use AJAX to request only the data from the web-server that needs updating on the page.

There are plenty of tutorials on AJAX. If you need to support IE6, it can be just a tad more difficult, otherwise it is quite simple. In theory:

  1. Create an XMLHTTPRequest object.
  2. Tell it a URL that points to the data that needs updating on your page (it doesn't have to be XML).
  3. Give the object a function that can process the data when it is received.
  4. Tell the object to send the request to the server and retrieve the data.
dreamlax