urllib2 / ClientCookie / Keep-Alive

Richie Hindle richie at entrian.com
Fri Oct 15 10:18:25 EDT 2004


Hi,

I'm trying to write a test script to hammer an HTTP server over a
persistent HTTP 1.1 connection.  The server uses cookies, so I'm using a
combination of ClientCookie 0.4.19 and urllib2 with Python 2.3.4 on
Windows XP.  This is what I have so far:

import urllib2, ClientCookie
UA = 'Mozilla/4.0 (compatible; MSIE 6.0;)'
URL = 'http://server/resource/'
opener = ClientCookie.build_opener(ClientCookie.HTTPCookieProcessor)
while 1:
    request = ClientCookie.Request(URL)
    request.add_header('User-Agent', UA)
    print repr(opener.open(request).read()[:100])

Which works fine, but opens a new connection for every request.
Following some (dubious) code I found with Google, I added this:

    request.add_header('Connection', 'Keep-alive')

but that makes it hang.

Can someone tell me the official way to enable urllib2 and/ClientCookie
to use persistent connections?

(I briefly tried Python 2.4, but that didn't work either.  If there's
solution that requires Python 2.4, that's no problem.)

-- 
Richie Hindle
richie at entrian.com




More information about the Python-list mailing list