Как распечатать весь текст элемента, к которому добавлен счетчик в отдельных строках, используя Selenium и Python - PullRequest
0 голосов
/ 17 июня 2020

Код:

elements = driver.find_elements_by_xpath('//*[@id="field-options"]')
for element in elements:
    options = element.text  
    print(options)

Это дает результат:

elementONE
elementTWO
elementTHREE

Как я могу подсчитать каждый элемент из списка и распечатать номер перед каждым элементом, чтобы он выглядел так:

1   elementONE
2   elementTWO
3   elementTHREE
...

Ответы [ 3 ]

0 голосов
/ 17 июня 2020

Попробуйте это,

for i, element in enumerate(elements):
    options = element.text  
    print(i+1, options)

Надеюсь, это вам поможет!

0 голосов
/ 17 июня 2020

Чтобы добавить счетчик, начиная с 1 , к каждому элементу списка, вы можете использовать s enumerate() следующим образом:

  • Кодовый блок:

    for count, item in enumerate(driver.find_elements_by_xpath('//*[@id="field-options"]')):
        print(count+1, item.text)
    
  • Вывод в консоль:

    1 elementONE
    2 elementTWO
    3 elementTHREE
    
0 голосов
/ 17 июня 2020

Используйте enumerate для этого:

for i, element in enumerate(elements):
    options = element.text  
    print(i, options)

Начальный индекс по умолчанию равен 0, поэтому приведенное выше будет выводить:

0   elementONE
1   elementTWO
...

Вы можете настроить его, добавив аргумент start:

for i, element in enumerate(elements, start=1):
    #...
...