python - 如何使用python在iframe中找到按钮的XPath?
问题描述
我在 iframe 中有以下 html 对象:
我需要找到它的 XPath 才能单击“提交”按钮,但找不到它。XPath 助手只显示“//iframe”。
到目前为止,我已经尝试过:
submit = driver.find_elements_by_xpath("//iframe[@id='btnSubmit']")
submit.click
解决方案
所有内容,在 a 内frame
或iframe
不切换到 就无法访问iframe/frame
。所以首先切换到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
推荐阅读
- node.js - bookshelfjs关系中的SUM列
- python - Empty state_dict with vector or tuple of layers in nn.Module
- c# - 是否可以直接从 MemoryStream 将 CSV 文件上传到 SFTP 服务器?
- function - Julia 中的这个递归函数是如何工作的?
- google-cloud-sql - 从多个 VPC 访问 Google Cloud SQL
- c# - 如何在 C# API 中返回 JSON
- python - 如何在客户端服务器设置中使用 MySQL 和 Python
- vue.js - Vuetify 加载器组件,直到页面完全加载
- c# - 从文件系统获取图像并使用 HttpClient 将它们发送到 C# 中的 API 的好方法
- reactjs - React 钩子的依赖项是什么?