diff --git a/python2/httplib2/__init__.py b/python2/httplib2/__init__.py
index b21bf15..3054051 100644
--- a/python2/httplib2/__init__.py
+++ b/python2/httplib2/__init__.py
@@ -41,6 +41,7 @@
 import calendar
 import time
 import random
+import errno
 # remove depracated warning in python2.6
 try:
     from hashlib import sha1 as _sha, md5 as _md5
@@ -865,7 +866,10 @@
             except socket.gaierror:
                 conn.close()
                 raise ServerNotFoundError("Unable to find the server at %s" % conn.host)
-            except (socket.error, httplib.HTTPException):
+            except socket.error, e:
+                if e.errno == errno.ECONNREFUSED: # Connection refused
+                    raise
+            except httplib.HTTPException:
                 # Just because the server closed the connection doesn't apparently mean
                 # that the server didn't send a response.
                 pass
diff --git a/python3/httplib2/__init__.py b/python3/httplib2/__init__.py
index f7b346b..ccd4d46 100644
--- a/python3/httplib2/__init__.py
+++ b/python3/httplib2/__init__.py
@@ -43,6 +43,7 @@
 import calendar
 import time
 import random
+import errno
 from hashlib import sha1 as _sha, md5 as _md5
 import hmac
 from gettext import gettext as _
@@ -850,7 +851,11 @@
             except socket.gaierror:
                 conn.close()
                 raise ServerNotFoundError("Unable to find the server at %s" % conn.host)
-            except (socket.error, httplib.HTTPException):
+            except socket.error as e:
+                errno_ = (e.args[0].errno if isinstance(e.args[0], socket.error) else e.errno)
+                if errno_ == errno.ECONNREFUSED: # Connection refused
+                    raise
+            except httplib.HTTPException:
                 # Just because the server closed the connection doesn't apparently mean
                 # that the server didn't send a response.
                 pass
