|
26 | 26 | from urllib3.exceptions import ReadTimeoutError
|
27 | 27 | from urllib3.exceptions import SSLError as _SSLError
|
28 | 28 | from urllib3.exceptions import ResponseError
|
| 29 | +from urllib3.exceptions import LocationValueError |
29 | 30 |
|
30 | 31 | from .models import Response
|
31 | 32 | from .compat import urlparse, basestring
|
|
35 | 36 | from .structures import CaseInsensitiveDict
|
36 | 37 | from .cookies import extract_cookies_to_jar
|
37 | 38 | from .exceptions import (ConnectionError, ConnectTimeout, ReadTimeout, SSLError,
|
38 |
| - ProxyError, RetryError, InvalidSchema, InvalidProxyURL) |
| 39 | + ProxyError, RetryError, InvalidSchema, InvalidProxyURL, |
| 40 | + InvalidURL) |
39 | 41 | from .auth import _basic_auth_str
|
40 | 42 |
|
41 | 43 | try:
|
@@ -407,7 +409,10 @@ def send(self, request, stream=False, timeout=None, verify=True, cert=None, prox
|
407 | 409 | :rtype: requests.Response
|
408 | 410 | """
|
409 | 411 |
|
410 |
| - conn = self.get_connection(request.url, proxies) |
| 412 | + try: |
| 413 | + conn = self.get_connection(request.url, proxies) |
| 414 | + except LocationValueError as e: |
| 415 | + raise InvalidURL(e, request=request) |
411 | 416 |
|
412 | 417 | self.cert_verify(conn, request.url, verify, cert)
|
413 | 418 | url = self.request_url(request, proxies)
|
|
0 commit comments