我在iframe中有以下html对象:
"提交"按钮的 html 代码
我需要找到它的XPath才能单击"提交"按钮,但找不到它。XPath 助手仅显示 "//iframe"。
到目前为止,我已经尝试过:
submit = driver.find_elements_by_xpath("//iframe[@id='btnSubmit']")
submit.click
如果不切换到iframe/frame
,则无法访问frame
或iframe
内的所有内容。所以首先切换到frame
内容:
driver.switch_to.frame(driver.find_element_by_name("frame_name"))
或
driver.switch_to.frame(driver.find_element_by_xpath("//xpath/to/frame"))
然后,您可以找到提交按钮并单击它:
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//*[@id='btnSubmit']"))).click()
比切换到默认内容,如下所示:
driver.switch_to.default_content()
注意:您必须添加一些导入:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC