定位"前端工具"时报错 IndexError: list index out of range,请问如何解决?

来源:8-2 ActionChains方法基础使用

慕前端3486152

2020-03-09

**#2020年3月9日执行下面代码(perform后与老师定位“前端工具”的代码相同)但报错了:**

driver = webdriver.Chrome()
maxwindow = driver.maximize_window()
driver.get('https://www.imooc.com/')
time.sleep(5)  
driver.find_element_by_class_name('redrain-closeBtn').click()
time.sleep(5)  
element = driver.find_element_by_class_name('menuContent').find_elements_by_class_name('item')[1]
ActionChains(driver).move_to_element(element).perform()
time.sleep(5)
driver.find_elements_by_class_name('tag_box')[1].find_element_by_link_text('CSS').click()
time.sleep(3)

#报错如下:
driver.find_elements_by_class_name(‘tag_box’)[1].find_element_by_link_text(‘前端工具’).click()
IndexError: list index out of range

写回答

1回答

Mushishi

2020-03-09

driver.find_elements_by_class_name(‘tag_box’)[1].find_element_by_link_text(‘前端工具’).click()

findelements 找的是一个list,但是这个list里面你有多少个元素呢?现在你传递1,说没有。说明只找到一个元素。可以现driver.find_elements_by_class_name(‘tag_box’)[1] 把他的len 打印出来,看一下多少个。

0
2
Mushishi
回复
慕前端3486152
print(len(driver.find_elements_by_class_name('tag_box'))) 打印这个,看个数。肯定只有一个。至于为什么只有一个你需要打开页面后看一下你源码显示没有 2、driver.find_element_by_class_name('tag_box') 既然告诉你没有元素,说明你这个页面要么没加载出来,要么所有元素不可显示。 3、你driver是定位集父节点是哪里呢?
2020-03-11
共2条回复

助力Python功能测试人员进阶Web自动化测试

轻松转型,快速胜任自动化测试工程师岗位

916 学习 · 607 问题

查看课程