小编典典

多个类的find_element_by_class_name

selenium

Python / Django API中的Selenium具有driver.find_element /
elements_by_class_name()函数,但未编写是否可以用于多个类。我需要选择具有bj,bd,bi等多个类的元素。


阅读 2447

收藏
2020-06-26

共1个答案

小编典典

答案是否定的,您不能使用driver.find_element_by_class_name ()或同时driver.find_elements_by_class_name ()使用多个类名。它仅接受单个类名。

但是,您可以使用find_elements_by_xpathfind_element_by_css_selector方法来实现查找具有多个类名称的元素。

例如下面的代码将使用两个不同的类名在Google网站上查找元素。

url= "http://google.com"
driver = webdriver.Chrome()
driver.get(url)
driver.find_elements_by_xpath("//*[@class='sfibbbc' or @class='jsb']")
# Following line will result in error 
driver.find_elements_by_class_name("sfibbbc jsb")
2020-06-26