我有一些看起来像这样的代码:
print 'Starting browser'
browser = webdriver.Firefox()
print 'Loading %s' % base_url
browser.get(base_url)
try:
username_el = browser.find_element_by_css_selector('#username')
username_el.send_keys(credentials['username'])
password_el = browser.find_element_by_css_selector('#password')
password_el.send_keys(credentials['password'])
password_el.send_keys(Keys.RETURN)
print 'Logging in'
browser.get(base_url)
except NoSuchElementException:
print 'Already logged in'
pass
问题是它必须每次都登录(永远不会跳过异常)。这有两个问题:
所以,我想要保存并恢复我的浏览器会话,或者让浏览器保持打开状态并让Selenium控制它。
这可能吗?如果是这样,怎么样?
答案 0 :(得分:1)
我尝试使用get_cookies()来获取任何会话cookie,将其保存在浏览器会话(磁盘或其他)之间的持久性,并在您启动新浏览器时使用add_cookie()重新添加cookie会话。
虽然没有测试过这个......