diff --git a/requests/models.py b/requests/models.py index b3502674..1b77b303 100644 --- a/requests/models.py +++ b/requests/models.py @@ -343,8 +343,8 @@ class PreparedRequest(RequestEncodingMixin, RequestHooksMixin): else: url = unicode(url) if is_py2 else str(url) - # Remove leading and trailing whitespaces from url - url = url.strip() + # Remove leading whitespaces from url + url = url.lstrip() # Don't do any URL preparation for non-HTTP schemes like `mailto`, # `data` etc to work around exceptions from `url_parse`, which diff --git a/tests/test_requests.py b/tests/test_requests.py index eed80993..e2892f83 100755 --- a/tests/test_requests.py +++ b/tests/test_requests.py @@ -142,7 +142,7 @@ class TestRequests: def test_whitespaces_are_removed_from_url(self): # Test for issue #3696 - request = requests.Request('GET', ' http://example.com ').prepare() + request = requests.Request('GET', ' http://example.com').prepare() assert request.url == 'http://example.com/' @pytest.mark.parametrize('scheme', ('http://', 'HTTP://', 'hTTp://', 'HttP://'))