Переключатель iframe в Python-selenium не работает - PullRequest
0 голосов
/ 24 мая 2018

Я использую привязки python к селену (python 2.7.12, selenium 3.8.0), чтобы выбрать iframe на веб-странице.Но это не похоже на работу.Вот пример кода:

driver.get("http://jsfiddle.net/westonruter/6mSuK/")
print(driver.title)
elem = driver.find_element(By.XPATH, '//iframe[@name="result"]')
driver.switch_to_frame(elem)
print(driver.title)

Я использую тестовую страницу, в которую включен iframe.Я пытаюсь перейти на этот iframe и ожидаю, что вторая распечатка будет HTTPS iframe test by westonruter (, чтобы убедиться, что я переключился на правильный iframe ), но я снова получаю тот же вывод:

HTTPS iframe test - JSFiddle
HTTPS iframe test - JSFiddle

Что здесь не так?Почему селен не «переключается» на выбранный iframe?

Ответы [ 2 ]

0 голосов
/ 24 мая 2018

driver.title() будет по-прежнему возвращать заголовок браузера.

Попробуйте elem.get_attribute('name'), чтобы получить имя кадра.Если driver.switch_to_frame(elem) не вернул никаких исключений, он корректно переключился на фрейм.

0 голосов
/ 24 мая 2018

Переключатель работает нормально, но для получения значения title после переключения на iframe может потребоваться выполнить

title = driver.find_element_by_tag_name('title').get_attribute('textContent')

Выходное значение 'HTTPS iframe test by westonruter'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...