How do I load session and cookies from Selenium browser to requests library in Python?

后端 未结 3 1931
花落未央
花落未央 2020-12-12 18:24

How can I load session and cookies from Selenium browser? The following code:

import requests

cookies = [{u\'domain\': u\'academics.vit.ac.in\',
                    


        
相关标签:
3条回答
  • 2020-12-12 18:48

    I made this solution, it's solved unexpected keyword arguments expiry

    def set_cookies(cookies, s):
        for cookie in cookies:
            if 'httpOnly' in cookie:
                httpO = cookie.pop('httpOnly')
                cookie['rest'] = {'httpOnly': httpO}
            if 'expiry' in cookie:
                cookie['expires'] = cookie.pop('expiry')
            s.cookies.set(**cookie)
        return s
    
    0 讨论(0)
  • 2020-12-12 18:51

    First you have to get the cookies from your driver instance:

    cookies = driver.get_cookies()
    

    This returns cookie dictionaries for your session.

    Next, set those cookies in requests:

    s = requests.Session()
    for cookie in cookies:
        s.cookies.set(cookie['name'], cookie['value'])
    
    0 讨论(0)
  • 2020-12-12 19:09

    You can use 3rd party package like selenium-requests or requestium. They provide function to share cookies between requests and selenium.

    0 讨论(0)
提交回复
热议问题