svg图标是可点击的。
<div class="some-class">
<svg aria-label="Search" class="some-icon" width="24" height="24" fill="#000" viewBox="0 0 24 24">
<path d="M9.5,...,5 9.5,5Z">
</path>
</svg>
</div>
示例代码:
from selenium import webdriver
driver = webdriver.Chrome(CHROME_DRIVER_LOCATION)
driver.find_element_by_xpath('//*[@id="SearchForm"]/div[1]/span/div[1]/div[2]/svg/path').click()
错误:
没有这样的元素:无法定位元素:{“方法”:“xpath”,“选择器”:“/*[@id=“SearchForm”]/div[1]/span/div[1]/div[2]/svg/path”}
对于我的情况下,以下工作:
driver.find_element_by_xpath('//div[@class="some-class"]/*[name()="svg"][@aria-label="Search"]').click()
“svg”元素不是来自XHTML名称空间,而是属于svg名称空间。因此,在为svg标记构造xpath时,必须指定name()=“svg”。例如:“/*[name()='svg']/*[name()='path']”
以下讨论如何通过Java使用XPath和Selenium WebDriver单击SVG元素,供您参考
要单击svg图标上的()
,可以使用以下解决方案:
driver.find_element_by_xpath('//div[@class="some-class"]/*[name()="svg"][@aria-label="Search"]').click()
你可以在以下网站上找到一些相关的讨论:
用我在selenium的初学者知识,我试图找到点击元素,打开链接。这些项目的链接没有href。我如何执行点击正确的元素打开链接。 我正在使用python、selenium、chrome web驱动程序、BeautifulSoup。所有库都已更新。 下面是示例html片段,其中有一个我需要使用selenium点击的标题。请让我知道,如果你需要更多的html源。此代码来自仅限“登录”的网站。
我是cucumber测试的新手。我想要一个帮助,其中网页包含一个我想点击的按钮。我尝试了我可能的方法: (1)driver.findElement(By.xpath("//按钮[包含(文本(),'添加新')]")).点击(); (2)driver.findElement(By.linkText("添加新")). Click(); (3)driver.findElement(By.xpath("//
我正在尝试自动“Tableau”登录屏幕和下载报告流程。在我到达“下载”按钮之前一切正常。第一个问题是我无法右键单击下载按钮并在Chrome进行“检查”,这很奇怪。我不知何故能够通过浏览整个页面来找到xpath。当我尝试单击它时,我得到“由:org.openqa.selenium.NoSuchElementException引起:没有这样的元素:无法定位元素:{"方法":"xpath","sele
我尝试使用xpath和classname来定位并单击按钮。然而,什么都不管用。 driver.find_element(By.XPATH,“//button[@class='sc-cqCuEk ffSPoi MuiButtonBase root sc dliRfk hLpdQI MuiAccordionSummary root Mui展开的MuiAccountionSummarygutters s
我就是不能点击按钮进入下一页。目前为止我尝试了以下方法 编辑 关键是重新定位元素,重新加载。由于我在表单中单击,底层代码发生了变化。司机。通过xpath(//button[@type='submit'][@name='button'])查找元素。因此,click()无法找到元素。重新加载驱动程序后。get(“%s/%s:%s”%(str(sys.argv[4])、str(sys.argv[2])、
问题内容: svg图标是可单击的。 样例代码: 错误: 没有这样的元素:无法找到元素:{“ method”:“ xpath”,“ selector”:“ // * [@ id =” SearchForm“] / div [1] / span / div [1] / div [2 ] / svg / path“} 问题答案: 要在svg图标上可以使用以下解决方案: