Как обновить уже открытую веб-страницу Я просто хочу обновить уже открытую веб-страницу с помощью Selenium. Он всегда открывает новое окно браузера. Что я делаю неправильно? from selenium import webdriver import urllib import urllib2 driver = webdriver.Firefox() driver.refresh() Ответ 1 Я бы предложил привязать поиск элемента драйвера к телу тега и использовать команду обновления браузера. В OSX например driver.find_element_by_tag_name('body').send_keys(Keys.COMMAND + 'r') Документация по ключам здесь: http://selenium-python.readthedocs.org/en/latest/api.html Обновление: следующий код, очень похожий на ваш, прекрасно работает для меня. driver = webdriver.Firefox() driver.get(response.url) #tested in combination with scrapy time.sleep(3) driver.refresh() Вы уверены, что правильно загрузили веб-страницу с драйвером перед ее обновлением? Ответ 2 Вы можете попробовать любой из приведенных ниже методов для этого. Способ 1: driver.findElement(By.name("s")).sendKeys(Keys.F5); Способ 2: driver.get(driver.getCurrentUrl()); method3: driver.navigate().to(driver.getCurrentUrl()); Method4: driver.findElement(By.name("s")).sendKeys("\uE035"); Ответ 3 Проблема в том, что вы открываете веб-драйвер, а затем пытаетесь обновить его, если вы не указали URL-адрес. Все, что вам нужно сделать, это получить желаемый URL перед обновлением: from selenium import webdriver import urllib import urllib2 driver = webdriver.Firefox() driver.get("Your desired URL goes here...") #now you can refresh the page! driver.refresh() Ответ 4 Хорошая идея для "driver.refresh()" У меня есть еще одна проблема: в "Киоске" я должен переключаться между 2 страницами URL, скажем, через 1 минуту. Как я могу решить это? Привет Мартин
Ответ 1 Я бы предложил привязать поиск элемента драйвера к телу тега и использовать команду обновления браузера. В OSX например driver.find_element_by_tag_name('body').send_keys(Keys.COMMAND + 'r') Документация по ключам здесь: http://selenium-python.readthedocs.org/en/latest/api.html Обновление: следующий код, очень похожий на ваш, прекрасно работает для меня. driver = webdriver.Firefox() driver.get(response.url) #tested in combination with scrapy time.sleep(3) driver.refresh() Вы уверены, что правильно загрузили веб-страницу с драйвером перед ее обновлением?
Ответ 2 Вы можете попробовать любой из приведенных ниже методов для этого. Способ 1: driver.findElement(By.name("s")).sendKeys(Keys.F5); Способ 2: driver.get(driver.getCurrentUrl()); method3: driver.navigate().to(driver.getCurrentUrl()); Method4: driver.findElement(By.name("s")).sendKeys("\uE035");
Ответ 3 Проблема в том, что вы открываете веб-драйвер, а затем пытаетесь обновить его, если вы не указали URL-адрес. Все, что вам нужно сделать, это получить желаемый URL перед обновлением: from selenium import webdriver import urllib import urllib2 driver = webdriver.Firefox() driver.get("Your desired URL goes here...") #now you can refresh the page! driver.refresh()
Ответ 4 Хорошая идея для "driver.refresh()" У меня есть еще одна проблема: в "Киоске" я должен переключаться между 2 страницами URL, скажем, через 1 минуту. Как я могу решить это? Привет Мартин