我正在尝试在登录页面上使用selenium进行一些授权。
页面有验证码,所以不可能自动化登录过程,有没有办法登录并保存cookie,然后将它们导入到另一个浏览器实例中?
发布于 2021-04-15 19:23:38
为了在抓取时绕过验证码,您必须手动解算验证码并导出您获得的cookie。现在,每次打开Selenium WebDriver时,请确保添加了导出的cookie。为了安全起见,请保存所有cookie。
如果你想在你的scrapes中增加一层稳定性,你应该导出几个cookie,并让你的脚本在每次你进入登录页面时随机选择其中一个。
这些cookies的有效期很长,因此您不需要每天都获得新的cookies。
有关在Python和Selenium中保存和加载cookie的帮助,您可以使用以下代码:
Python您可以使用pickle将当前的保存为Python对象。例如:
import pickle
import selenium.webdriver
driver = selenium.webdriver.Firefox()
driver.get("http://www.google.com")
pickle.dump( driver.get_cookies() , open("cookies.pkl","wb"))import pickle
import selenium.webdriver
driver = selenium.webdriver.Firefox()
driver.get("http://www.google.com")
cookies = pickle.load(open("cookies.pkl", "rb"))
for cookie in cookies:
driver.add_cookie(cookie)https://stackoverflow.com/questions/67107082
复制相似问题