Frames, alerts and prompts

Using iframes

You can use the get_iframe method and the with statement to interact with iframes. You can pass the iframe’s name, id, index, or web element to get_iframe.

with browser.get_iframe('iframemodal') as iframe:
    iframe.do_stuff()

Handling alerts and prompts

Chrome support for alerts and prompts is new in Splinter 0.4.

IMPORTANT: Only webdriver (Firefox and Chrome) has support for alerts and prompts.

You can interact with alerts and prompts using the get_alert method.

alert = browser.get_alert()
alert.text
alert.accept()
alert.dismiss()

In case of prompts, you can answer it using the send_keys method.

prompt = browser.get_alert()
prompt.text
prompt.send_keys('text')
prompt.accept()
prompt.dismiss()

You can also use the with statement to interact with both alerts and prompts.

with browser.get_alert() as alert:
    alert.do_stuff()

If there’s no prompt or alert, get_alert will return None. Remember to always use at least one of the alert/prompt ending methods (accept and dismiss). Otherwise, your browser instance will be frozen until you accept or dismiss the alert/prompt correctly.