无法使用 python 在 selenium 中捕获具有 _ngcontent-c6 的 Web 元素
unable to capture web element having _ngcontent-c6 in selenium with python
我想捕获以下屏幕截图中突出显示的 Web 元素:
我已经尝试了以下选项(使用绝对路径和相对路径):
- 提交=driver.find_element_by_xpath("html/body/vra-root/vra-shell/clr-main-container/vra-tabs/nav/ul/li[2]/a").click()
- 提交=driver.find_element_by_xpath("//ul[@class='nav']//li[@class='nav-item ng-star-inserted']// a[@id='csp.cs.ui.deployment'] 并包含 [text()='Deployments']").click()
- 提交=driver.find_element_by_xpath("//a[text()='Deployments']").click()
- 内容=driver.find_element_by_css_selector('a.nav-link').click()
但是,每次我收到以下错误消息`NoSuchElementException:消息:没有这样的元素:无法找到元素:
我是新手,欢迎任何帮助!`
这看起来像是在 iframe 中,如果是,那么您可以先将其切换到 iframe,如下所示:
WebDriverWait(driver, 10).until(EC.frame_to_be_available_and_switch_to_it((By.XPATH,"iframe xpath")))
然后点击:
driver.find_element_by_xpath("//a[text()='Deployments']").click()
如果这不是 @cruisepandy 描述的 iframe
问题,那么尝试添加等待时间以查看是否有帮助
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
wait = WebDriverWait(driver, 10)
submit = wait.until(EC.element_to_be_clickable((By.XPATH, "//a[text()='Deployments']")))
submit.click()
我想捕获以下屏幕截图中突出显示的 Web 元素:
我已经尝试了以下选项(使用绝对路径和相对路径):
- 提交=driver.find_element_by_xpath("html/body/vra-root/vra-shell/clr-main-container/vra-tabs/nav/ul/li[2]/a").click()
- 提交=driver.find_element_by_xpath("//ul[@class='nav']//li[@class='nav-item ng-star-inserted']// a[@id='csp.cs.ui.deployment'] 并包含 [text()='Deployments']").click()
- 提交=driver.find_element_by_xpath("//a[text()='Deployments']").click()
- 内容=driver.find_element_by_css_selector('a.nav-link').click()
但是,每次我收到以下错误消息`NoSuchElementException:消息:没有这样的元素:无法找到元素:
我是新手,欢迎任何帮助!`
这看起来像是在 iframe 中,如果是,那么您可以先将其切换到 iframe,如下所示:
WebDriverWait(driver, 10).until(EC.frame_to_be_available_and_switch_to_it((By.XPATH,"iframe xpath")))
然后点击:
driver.find_element_by_xpath("//a[text()='Deployments']").click()
如果这不是 @cruisepandy 描述的 iframe
问题,那么尝试添加等待时间以查看是否有帮助
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
wait = WebDriverWait(driver, 10)
submit = wait.until(EC.element_to_be_clickable((By.XPATH, "//a[text()='Deployments']")))
submit.click()