Skip to main content
 首页 » 编程设计

python之列表索引必须是整数或切片,而不是 WebElement

2025年02月15日7lori

尝试遍历页面上给定类的所有项目:

for i in browser.find_elements_by_class_name("myClass"): 
        elementContents=str(browser.find_elements_by_class_name("myClass")[i].get_attribute('innerHTML')) 

我收到一条错误消息:

TypeError: list indices must be integers or slices, not WebElement 

str 的原因是因为我可以输出元素的 HTML 内容。

请您参考如下方法:

browser.find_elements_by_class_name("myClass") 返回 WebElements 列表。所以..在您的 for 循环中,每次迭代都会生成一个 WebElement,而不是一个整数索引...您根本不需要使用索引。

此外,在执行的 block 中,您不需要第二次调用 browser.find_elements_by_class_name("myClass")

你想做这样的事情:

for element in browser.find_elements_by_class_name('myClass'): 
    element_contents = element.get_attribute('innerHTML')