保存Selenium的当前状态

时间:2015-08-02 21:35:17

标签: python selenium selenium-webdriver

是否可以保存 Selenium 浏览器的当前状态?

要理解我会提供一个例子:

我们说有一个网页。我点击了按钮,在那里我找到了许多其他按钮。我想按顺序检查每个按钮。问题是每个按钮都需要获取浏览器信息,如引用者,这应该是第一次点击后的第一页等。

在这种情况下,我需要将这些信息保存在浏览器中,因为如果我点击第二个按钮,引荐来源将是最近打开的页面。在那之后我无法点击第三个权利。我不得不回去,但有些网页不允许浏览器' 返回'。另一个优点是我不必向服务器发送新请求。

这样的事情:

for but in driver.find_elements_by_class_name('button'):
    state = driver.save_state()
    but.click()
    # do stuff
    driver.load_state()

1 个答案:

答案 0 :(得分:-1)

还有另一种解决方案。 Web浏览器通常使用缓存来保存其状态。因此,您可以在单击每个按钮之前保存缓存,然后重新使用缓存以回到单击状态之前。 我已经在我的项目中使用了该解决方案。如果没有任何内容保存到数据库或其他第三方,它将非常有效。