我的selenium驱动程序找到大约13个li元素。但是,以下不起作用,给出元素未找到错误:
driver.find_element_by_xpath('//li[0]')
但是,这可以正常工作:
driver.find_elements_by_xpath('//li')[0]
我认为这些都是一样的,尽管我更喜欢第一种方法。这是怎么回事?
答案 0 :(得分:6)
Python是零索引的,但是XPath is one-indexed:
第一个位置是1.
因此,以下内容是等效的:
driver.find_elements_by_xpath('//li')[0]
driver.find_element_by_xpath('(//li)[1]')