一尘不染

使用Selenium Python单击svg

selenium

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()

错误:

没有这样的元素:无法找到元素:{“ method”:“ xpath”,“ selector”:“ // * [@ id =” SearchForm“]
/ div [1] / span / div [1] / div [2 ] / svg / path“}


阅读 819

收藏
2020-06-26

共1个答案

一尘不染

click()在svg图标上可以使用以下解决方案:

driver.find_element_by_xpath('//div[@class="some-class"]/*[name()="svg"][@aria-label="Search"]').click()
2020-06-26