📜  get_cookies 驱动方法 – Selenium Python(1)

📅  最后修改于: 2023-12-03 14:41:23.440000             🧑  作者: Mango

get_cookies 驱动方法 – Selenium Python

在使用 Selenium 进行网页自动化测试时,有时需要获取当前网页的 cookies,方便后续在不同的会话中继续操作。而 get_cookies 方法可以帮助我们获取当前页面的 cookies

方法说明

get_cookies 方法属于 WebDriver 实例对象,返回一个列表,其中每个列表元素都是一个字典,包含了每个 cookie 的详细信息。

def get_cookies(self) -> list[dict]:
    """
    Returns a set of key-value pairs representing the cookie for the current session.
    """
    pass

用法示例
from selenium import webdriver

# 实例化浏览器对象
driver = webdriver.Chrome()

# 访问百度首页并输入关键字
driver.get("https://www.baidu.com")
driver.find_element_by_id("kw").send_keys("Selenium")

# 获取当前页面的所有cookies
print(driver.get_cookies())

# 关闭浏览器
driver.quit()

输出结果:

[
    {'domain': '.baidu.com', 'expiry': 1663488000, 'httpOnly': False, 'name': 'BAIDUID', 'path': '/', 'sameSite': 'None', 'secure': True, 'value': '36B26A8C549B3048xxxxxxxxxxxxx:FG=1'},
    {'domain': '.baidu.com', 'expiry': 1663488000, 'httpOnly': False, 'name': 'BIDUPSID', 'path': '/', 'sameSite': 'None', 'secure': True, 'value': '36B26Axxxxxxxxxxx'}
]

其中每个 cookie 的信息包括:

  • domain:cookie所属的域名。
  • expiry:cookie过期的时间戳。
  • httpOnly:是否只能由服务器设置。
  • name:cookie的名称。
  • path:cookie所在的路径。
  • sameSite:cookie遵循的同源策略。
  • secure:是否只能在HTTPS连接中传输。
  • value:cookie的值。

通过对 get_cookies 方法的使用,我们可以方便地获取当前页面的 cookies,并在需要的时候进行处理。