Можно ли "перевести" сеанс между selenium.webdriver и request.session
Теоретически, если я скопирую все файлы cookie из объекта selenium webdriver
в объект requests.Session
, будут ли запросы продолжать, как если бы сеанс не прерывался?
В частности, меня интересует автоматизация записи, когда я попадаю в определенное место на веб-странице через selenium, а затем передаю определенную ссылку для загрузки на requests
, которая будет загружать и проверять определенные байты из файла, а иногда и полный файл. (Значение загруженного файла изменилось бы на основе моего взаимодействия в селене)
Ответы
Ответ 1
Да, это определенно сработает. Следующий фрагмент кода также должен помочь -
headers = {
"User-Agent":
"Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36"
}
s = requests.session()
s.headers.update(headers)
for cookie in driver.get_cookies():
c = {cookie['name']: cookie['value']}
s.cookies.update(c)