Заполнение формы с элементами списка с разрывом строки после каждого элемента списка - PullRequest
0 голосов
/ 25 апреля 2019

Я использую Selenium / Python, и я довольно новичок в программировании.Я нигде не смог найти решение для моего случая.

Я пытаюсь заполнить форму на веб-странице с содержанием списка строк, используя .send_keys.Форма требует, чтобы каждый элемент был разделен разрывом строки, например так:

    item1
    item2
    item3
    item4
    item5

У меня есть следующий список: items_list = [item1, item2, item4, item5]

Итак, я попробовал следующий цикл:

for it in items_list:
    driver.find_element_by_id("WHATEVER ID").send_keys(items_list)

В результате форма заполняется без перевода строки:

    item1item2item3item4item5

Я попытался использовать items_list2 = '\n'.join(items_list) безуспешно: я получаю

    i
    t
    e
    m
    1
    i
    t
    e
    m
    2
    ...and so on

Так как яизучая Python по мере написания кода, я, должно быть, что-то упустил, но я не уверен, что мне следует искать.Спасибо за вашу помощь.

Ответы [ 2 ]

0 голосов
/ 25 апреля 2019

Хорошо, спасибо всем, я действительно нашел решение моей проблемы. Я думал, что простая передача "\ n" после каждого элемента списка будет строкой, например:

item1\nitem2\nitem3\nitem4\nitem5\n

Но это фактически добавило разрыв строки в форму:

for it in items_list:
    driver.find_element_by_id("WHATEVER ID").send_keys(items_list)
    driver.find_element_by_id("WHATEVER ID").send_keys("\n")

Что дает желаемый результат:

item1
item2
item3
item4
item5
0 голосов
/ 25 апреля 2019
items_list = '\n'.join([item1, item2, item4, item5])
item_list = item_list.replace("\n", Keys.chord(Keys.SHIFT, Keys.ENTER))
driver.find_element_by_id("WHATEVER ID").send_keys(items_list2)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...