summaryrefslogtreecommitdiff
path: root/requests_cache
diff options
context:
space:
mode:
authorJordan Cook <jordan.cook@pioneer.com>2022-05-18 10:20:42 -0500
committerJordan Cook <jordan.cook@pioneer.com>2022-05-18 10:52:11 -0500
commit2a247ef196d7b786c5bf8e115530a00cff68cfd8 (patch)
treeb26bbe797397617bf474a7286f474e1aa77d20d6 /requests_cache
parentc4c46c97cf80cf289ac9bc28e23d2603abc5bcec (diff)
downloadrequests-cache-2a247ef196d7b786c5bf8e115530a00cff68cfd8.tar.gz
Add CachedRequest.path_url property
Diffstat (limited to 'requests_cache')
-rw-r--r--requests_cache/models/request.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/requests_cache/models/request.py b/requests_cache/models/request.py
index d08ada1..a827f55 100644
--- a/requests_cache/models/request.py
+++ b/requests_cache/models/request.py
@@ -1,4 +1,5 @@
from logging import getLogger
+from urllib.parse import urlsplit
from attr import asdict, define, field, fields_dict
from requests import PreparedRequest
@@ -28,6 +29,13 @@ class CachedRequest(RichMixin):
kwargs['cookies'] = getattr(original_request, '_cookies', None)
return cls(**kwargs) # type: ignore # False positive in mypy 0.920+?
+ @property
+ def path_url(self):
+ p = urlsplit(self.url)
+ url = p.path or '/'
+ url += f'?{p.query}' if p.query else ''
+ return url
+
def copy(self) -> 'CachedRequest':
"""Return a copy of the CachedRequest"""
return self.__class__(**asdict(self))