pythonseleniumlistindexoutofrange[Python基础]

python

常见错误原因

  常见错误原因

其他错误原因

  场景

    使用selenium循环打开并跳转到新的网页,然后关闭新的窗口,然后回到原来窗口,这时候获取list中的值,报错: list index out of range。

  原因

    由于打开新的窗口,导致list中的值过期了,这时候你通过 item = list[0]进行取值的话就会报这个错误,这时候你打印一下list,就会打印出来空数组

  解决

    循环的时候不再循环这个获取到的dom元素list,而是循环这个list的长度,然后每次循环开始的时候都获取一下这个list,在for循环中就可以获取元素,不会报错了

list = browser.find_elements_by_link_text("开始学习")

length = len(list)

print(f"循环开始前============len(list):{len(list)}")

print(f"循环开始前-----------len(list):{length}")

for i in range(length):

list = browser.find_elements_by_link_text("开始学习")

print(f"循环中============list:{list}")

print(f"循环中============len(list):{len(list)}")

print(f"i:{i},range(length):{range(length)}")

element = list[i]

print("element.click执行前")

element.click()

以上是 pythonseleniumlistindexoutofrange[Python基础] 的全部内容, 来源链接: utcz.com/z/530216.html

回到顶部