要获取和保存Cookies,你可以使用Selenium的get_cookies()
方法来获取当前页面的所有Cookies,并将其保存在一个变量中。然后,你可以将这些Cookies保存到一个文件中,以便在以后的会话中可以加载它们。
下面是一个使用Python和Selenium获取并保存Cookies的示例代码:
from selenium import webdriver
# 启动浏览器
driver = webdriver.Chrome()
# 访问网页
driver.get("https://www.example.com")
# 获取并打印当前页面的所有Cookies
cookies = driver.get_cookies()
for cookie in cookies:
print(cookie)
# 保存Cookies到文件
with open("cookies.txt", "w") as f:
for cookie in cookies:
f.write(f"{cookie['name']}={cookie['value']}; ")
# 关闭浏览器
driver.quit()
在这个示例中,我们首先启动了Chrome浏览器,并访问了一个网页。然后,我们使用get_cookies()
方法获取了当前页面的所有Cookies,并将它们保存在一个变量中。接下来,我们将这些Cookies保存到一个文本文件中,每个Cookie使用name=value
的格式。最后,我们关闭了浏览器。
当你需要在以后的会话中加载这些Cookies时,你可以使用add_cookie()
方法将它们添加到浏览器中。下面是一个加载Cookies的示例代码:
from selenium import webdriver
# 启动浏览器
driver = webdriver.Chrome()
# 访问网页
driver.get("https://www.example.com")
# 加载Cookies
with open("cookies.txt", "r") as f:
cookies = f.read().strip().split("; ")
for cookie in cookies:
name, value = cookie.split("=")
driver.add_cookie({'name': name, 'value': value})
# 重新刷新页面
driver.refresh()
# 关闭浏览器
driver.quit()
在这个示例中,我们首先启动了Chrome浏览器,并访问了一个网页。然后,我们从文件中加载之前保存的Cookies,并使用add_cookie()
方法将它们添加到浏览器中。最后,我们重新刷新页面以使新的Cookies生效,并关闭了浏览器。
希望能对你有所帮助!