Selenium循环所有元素

时间:2016-03-21 16:10:11

标签: python selenium

我想快速导出所有事件,包括我本地html文件中的事件类型和事件标题。

i=0
for elements in driver.find_elements_by_class_name('event'):
    entryType = driver.find_element_by_class_name('event-type')
    contentEntryType = entryType.get_attribute("innerHTML")
    print (contentEntryType)
    entryTitle = driver.find_element_by_class_name('event-title')
    contentEntryTitle = entryTitle.get_attribute("innerHTML")
    print (contentEntryTitle)
    i=i+1
    print (i)

计数器正确运行至事件数。 将打印事件类型和事件标题。

但事件类型和事件标题对于所有事件都保持相同,其中i正确运行到251.任何人都能指出我所监督的内容吗?

1 个答案:

答案 0 :(得分:3)

问题是您使用driver查找特定于事件的信息,但在您的情况下应使用循环变量 - elements。我还会将其重命名为event以便于阅读:

for event in driver.find_elements_by_class_name('event'):
    entryType = event.find_element_by_class_name('event-type')
    entryTitle = event.find_element_by_class_name('event-title')

换句话说,现在事件类型和标题搜索将特定于上下文,特定于循环中找到的每个事件。