How to refresh an already opened web page

PhilippL picture PhilippL · Feb 11, 2015 · Viewed 76.8k times · Source

I just want to refresh an already opened web page with Selenium.

It always opens a new browser window.

What I'm doing wrong?

from selenium import webdriver
import urllib
import urllib2

driver = webdriver.Firefox()
driver.refresh()

Answer

aberna picture aberna · Feb 11, 2015

I would suggest binding the driver element search to the tag body and use the refresh command of the browser.

In OSX for example

driver.find_element_by_tag_name('body').send_keys(Keys.COMMAND + 'r')

Documentation on keys here: http://selenium-python.readthedocs.org/en/latest/api.html

Update: The following code, very similar to your one, works fine for me.

    driver = webdriver.Firefox()
    driver.get(response.url) #tested in combination with scrapy   
    time.sleep(3)   
    driver.refresh()

Are you sure you correctly load the web page with the driver before refreshing it ?