Как получить заголовок Authorization: Bearer при помощи python
Мне для автоматизации тестирования необходимо отправить запрос через API, в результате которого будет получен ответ с необходимыми сведениями. При моделировании запроса в postman я получил ошибку 401Unauthorized, после добавления токена авторизации Bearer запрос был обработан.
Мой вопрос заключается в том, как получить при помощи Python токен авторизации из заголовков.
Сценарий такой:
- Произведена авторизация на странице при помощи Selenium.
- Получен url текущей страницы и передан в requests.
- Выполнение GET и POST запросов.
Я пробовал использовать библиотеку requests и urllib3, но при печати headers получал только небольшую часть заголовков, содержащую куки и некоторую другую информацию, но не токен авторизации. При этом, если открыть инструменты разработчика в Chrome, то на вкладке Network виден этот токен.
Пример кода (работать не будет, т.к показан только принцип):
url = driver.current_url
headers = {}
token = requests.request("GET", url, headers=headers)
http = urllib3.PoolManager()
r = http.request('GET', url)
print('requests', token.request.headers)
print('urllib', r.headers)
Результат:
requests {'User-Agent': 'python-requests/2.27.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '/', 'Connection': 'keep-alive'}
urllib{'Date': 'Tue, 24 May 2022 08:02:28 GMT', 'Content-Type': 'text/html; charset=utf-8', 'Content-Length': '149', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=300', 'Content-Security-Policy': "default-src 'none '", 'X-Content-Type-Options': 'nosniff', 'Strict-Transport-Security': 'max-age=15724800; includeSubDomains', 'Set-Cookie': 'usi_portal=cxg55==; expires=Tue, 24-May-22 08:32:28 GMT; domain=.domain.domain.ru; path=/, 54rtrt54erhfhfg54efdrs; Path=/; Domain=.Domain.Domain.ru'})