带有 Firefox Web 驱动程序的 Selenium 无法通过 Python 代码找到元素
Selenium with Firefox web driver can not find elements by Python code
我无法使用 Firefox 网络驱动程序找到元素,它打印 0:
driver = webdriver.Firefox()
driver.get("https://www.unibet.ro/betting#filter/football")
event = driver.find_elements_by_class_name('KambiBC-event-item KambiBC-event-item--type-match')
print (len(event))
但是当我将网络驱动程序更改为 Edge:driver = webdriver.Edge()
时它会起作用,因为我还在我的路径环境中设置了边缘网络驱动程序,打印适量的网络元素
看起来您要查找的元素是用两个 class 定义的(KambiBC-event-item
和 KambiBC-event-item--type-match
)。
我相信 driver.find_elements_by_class_name()
需要一个 class 名称作为参数,因此它不适用于您的情况。
您可以尝试使用 find_elements_by_xpath()
方法,如下所示(请将 xpath 中的 //*
替换为适当的元素标签名称):
event = driver.find_elements_by_xpath("//*[@class='KambiBC-event-item KambiBC-event-item--type-match']")
我无法使用 Firefox 网络驱动程序找到元素,它打印 0:
driver = webdriver.Firefox()
driver.get("https://www.unibet.ro/betting#filter/football")
event = driver.find_elements_by_class_name('KambiBC-event-item KambiBC-event-item--type-match')
print (len(event))
但是当我将网络驱动程序更改为 Edge:driver = webdriver.Edge()
时它会起作用,因为我还在我的路径环境中设置了边缘网络驱动程序,打印适量的网络元素
看起来您要查找的元素是用两个 class 定义的(KambiBC-event-item
和 KambiBC-event-item--type-match
)。
我相信 driver.find_elements_by_class_name()
需要一个 class 名称作为参数,因此它不适用于您的情况。
您可以尝试使用 find_elements_by_xpath()
方法,如下所示(请将 xpath 中的 //*
替换为适当的元素标签名称):
event = driver.find_elements_by_xpath("//*[@class='KambiBC-event-item KambiBC-event-item--type-match']")