1
0
mirror of https://github.com/kevin1024/vcrpy.git synced 2025-12-08 16:53:23 +00:00

Call urllib.parse less frequently

This commit is contained in:
Martin Brunthaler
2021-09-30 09:33:20 +02:00
committed by Jair Henrique
parent 965f3658d5
commit ac230b76af

View File

@@ -27,6 +27,15 @@ class Request:
self.headers = headers
log.debug("Invoking Request %s", self.uri)
@property
def uri(self):
return self._uri
@uri.setter
def uri(self, uri):
self._uri = uri
self.parsed_uri = urlparse(uri)
@property
def headers(self):
return self._headers
@@ -61,30 +70,29 @@ class Request:
@property
def scheme(self):
return urlparse(self.uri).scheme
return self.parsed_uri.scheme
@property
def host(self):
return urlparse(self.uri).hostname
return self.parsed_uri.hostname
@property
def port(self):
parse_uri = urlparse(self.uri)
port = parse_uri.port
port = self.parsed_uri.port
if port is None:
try:
port = {"https": 443, "http": 80}[parse_uri.scheme]
port = {"https": 443, "http": 80}[self.parsed_uri.scheme]
except KeyError:
pass
return port
@property
def path(self):
return urlparse(self.uri).path
return self.parsed_uri.path
@property
def query(self):
q = urlparse(self.uri).query
q = self.parsed_uri.query
return sorted(parse_qsl(q))
# alias for backwards compatibility