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