Python & Selenium: невозможно нажать HREF в кадре - PullRequest
0 голосов
/ 20 марта 2020

У меня проблемы с нажатием кнопки HREF на веб-сайте. Пожалуйста, смотрите ниже для проверки на HREF и шаги, которые я попробовал. Любая помощь очень ценится.

enter image description here

Я пробовал:

 browser.switch_to.default_content()
 frames = browser.find_elements_by_tag_name('frame')
 browser.switch_to.frame(frames[1])
 browser.find_element_by_xpath("//a[contains(@href,'Home')]").click()

, а также:

 browser.find_element_by_xpath('//a[@href="javascript:openWorkFrame(\'/web/entry/en/websys/webArch/topPage.cgi\');"]').click()

Ответы [ 2 ]

2 голосов
/ 21 марта 2020

Попробуйте переключиться на свой первый кадр, используя browser.switch_to_frame(element), а затем используйте ниже xpath, чтобы перейти по ссылке

frame = browser.find_element_by_name('header')
browser.switch_to_frame(frame)
browser.find_element_by_xpath("//a/span").click()
browser.switch_to_default_content()
0 голосов
/ 20 марта 2020

Может быть, вы могли бы попробовать это выражение XPath?

xpath_expr = "//a/span[text() = 'Home']/.."
browser.find_element_by_xpath(xpath_expr).click()

По сути, найдите элемент span с помощью text = "Home", затем выберите его родителя (ссылку).

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