Add caching to an existing :py:class:`~requests.Session` object, while retaining all original session settings. Args: original_session: Session object to wrap kwargs: Keyword arguments for :py:class:`.CachedSession`
(cls, original_session: OriginalSession, **kwargs)
| 87 | |
| 88 | @classmethod |
| 89 | def wrap(cls, original_session: OriginalSession, **kwargs) -> 'CacheMixin': |
| 90 | """Add caching to an existing :py:class:`~requests.Session` object, while retaining all |
| 91 | original session settings. |
| 92 | |
| 93 | Args: |
| 94 | original_session: Session object to wrap |
| 95 | kwargs: Keyword arguments for :py:class:`.CachedSession` |
| 96 | """ |
| 97 | session = cls(**kwargs) |
| 98 | session.adapters = original_session.adapters |
| 99 | session.auth = original_session.auth |
| 100 | session.cert = original_session.cert |
| 101 | session.cookies = original_session.cookies |
| 102 | session.headers = original_session.headers |
| 103 | session.hooks = original_session.hooks |
| 104 | session.max_redirects = original_session.max_redirects |
| 105 | session.params = original_session.params |
| 106 | session.proxies = original_session.proxies |
| 107 | session.stream = original_session.stream |
| 108 | session.trust_env = original_session.trust_env |
| 109 | session.verify = original_session.verify |
| 110 | return session |
| 111 | |
| 112 | @property |
| 113 | def settings(self) -> CacheSettings: |