If *failure* is a common connection error, return a Unicode
    string describing it.  Otherwise, return *failure*.

def describe_error(failure):
    """If *failure* is a common connection error, return a Unicode
    string describing it.  Otherwise, return *failure*."""
    if failure.check(ResponseFailed):
        if any(f.check(InfiniteRedirection)
               for f in failure.value.reasons):
            return u'Encountered too many redirects.'
        return u'Received incomplete response from server.'
    if failure.check(ConnectError, DNSLookupError, BlacklistedHost):
        return u'Could not connect to server.'
    return failure