📜  在 selenium 中处理 cookie (1)

📅  最后修改于: 2023-12-03 15:37:31.387000             🧑  作者: Mango

在 Selenium 中处理 Cookie

什么是 Cookie?

Cookie 是浏览器存储在计算机上的小型文本文件,其中包含有关特定网站的信息。Cookie 可以用来记录用户的偏好、购物车内容等。在 Selenium 中使用 Cookie 可以模拟用户在浏览器中的行为,例如登录、保持登录状态等。

Selenium 中 Cookie 的操作方法
获取 Cookie

所有 Cookie

使用 driver.get_cookies() 方法可以获取当前会话中所有的 Cookie 信息。该方法返回一个列表,其中每个元素表示一个 Cookie,包含以下属性:

  • name:Cookie 的名称。
  • value:Cookie 的值。
  • domain:Cookie 生效的域名。
  • path:Cookie 生效的路径。
  • expires:Cookie 过期的时间。
  • httpOnly:是否只能通过 HTTP 访问该 Cookie。
  • secure:是否只能通过 HTTPS 访问该 Cookie。

以下是获取所有 Cookie 的代码片段:

# 获取所有 Cookie
cookies = driver.get_cookies()
for cookie in cookies:
    print(cookie)

指定 Cookie

使用 driver.get_cookie(name) 方法可以获取指定名称的 Cookie 信息。该方法返回一个字典,包含 Cookie 的各项信息。

以下是获取指定 Cookie 的代码片段:

# 获取指定 Cookie
cookie = driver.get_cookie("my_cookie")
print(cookie)
添加 Cookie

使用 driver.add_cookie(cookie_dict) 方法可以向当前会话中添加 Cookie。cookie_dict 是一个字典,包含 Cookie 的各项信息。

以下是添加 Cookie 的代码片段:

# 添加 Cookie
cookie = {"name": "my_cookie", "value": "123"}
driver.add_cookie(cookie)
删除 Cookie

使用 driver.delete_all_cookies() 方法可以删除当前会话中的所有 Cookie。使用 driver.delete_cookie(name) 方法可以删除指定名称的 Cookie。

以下是删除 Cookie 的代码片段:

# 删除所有 Cookie
driver.delete_all_cookies()

# 删除指定 Cookie
driver.delete_cookie("my_cookie")
总结

在 Selenium 中处理 Cookie 可以模拟用户在浏览器中的行为。通过获取、添加、删除 Cookie,可以实现登录、保持登录状态等功能。