def __init__( self, token, org_id, base_url="https://api.tracker.yandex.net", timeout=10, retries=10, headers=None, api_version=VERSION_V2, verify=True, proxies={}, ): self.session = requests.Session() if len(proxies): #{'http': 'http://10.2.4.144:3133','https': 'https://10.2.4.144:3133',} self.session.proxies = proxies self.session.verify = verify if headers is not None: self.session.headers.update(headers) self.session.headers['Authorization'] = 'OAuth ' + (token or 'not provided') self.session.headers['X-Org-Id'] = org_id or 'not provided' self.session.headers['Content-Type'] = 'application/json' # Check validity headers for requests >= 2.11 for header in self.session.headers.items(): check_header_validity(header) self.base_url = base_url self.api_version = api_version self.timeout = timeout self.retries = retries
def has_invalid_characters(name: str, value: str) -> bool: try: check_header_validity((name, value)) return bool(INVALID_HEADER_RE.search(value)) except InvalidHeader: return True