urllib2.urlopen() crashes on Windows 2008 Server

Ulli Horlacher framstag at rus.uni-stuttgart.de
Sun Dec 6 04:38:04 EST 2015


Dennis Lee Bieber <wlfraed at ix.netcom.com> wrote:

> >> Connection reset by peer.
> >> 
> >>     An existing connection was forcibly closed by the remote host. 
> >
> >This is not true.
> >The server is under my control. Die client has terminated the connection
> >(or a router between).

>         The odds are still good that something on the server is configured to
> not make a clean shutdown of TCP connections (a router should not be
> involved as the TCP connection is from client IP to server IP, regardless
> of intervening MAC Ethernet routing). The RST is coming from the server.

No.
The server does not reset the connection.
It is the router/firewall.


> >How can I trap this within the python program?
> >I see no exception.
> 
>         It's a socket error
> 
> https://docs.python.org/2/library/socket.html
> """
> 
> exception socket.error

Ok, I have now:

   try:
     req = urllib.Request(szurl)
     req.add_header('User-Agent',useragent)
     u = urllib.urlopen(req)
   except urllib.URLError as e:
     die('cannot get %s - %s' % (szurl,e.reason))
   except urllib.HTTPError as e:
     die('cannot get %s - server reply: %d %s' % (szurl,e.code,e.reason))
   except (IOError,httplib.BadStatusLine,httplib.HTTPException):
     die('cannot get %s - connection reset by router or firewall' % szurl)
   except socket.error as msg:
     die('cannot get %s - %s' % (szurl,msg))


-- 
Ullrich Horlacher              Server und Virtualisierung
Rechenzentrum IZUS/TIK         E-Mail: horlacher at tik.uni-stuttgart.de
Universitaet Stuttgart         Tel:    ++49-711-68565868
Allmandring 30a                Fax:    ++49-711-682357
70550 Stuttgart (Germany)      WWW:    http://www.tik.uni-stuttgart.de/



More information about the Python-list mailing list