Как получить значение элемента html в python-selenium? - PullRequest
0 голосов
/ 27 февраля 2019

На html-странице у меня есть следующий фрагмент:

<div class="jupyter-widgets widget-hbox widget-text">
    <div class="widget-label" style="display: block;">Walltime:</div>
    <input type="text" class="form-control" placeholder="">
</div>

, в котором элемент input отображается, как и ожидалось, в виде поля input .Тем не менее, это поле ввода имеет некоторое значение.

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

$ 0.value

Однако каксделать это в питоне-селене?

Когда у меня есть элемент input в переменной с именем 'input', я попытался сделать следующее:

driver.execute_script("arguments[0].value;", element)

, которая не возвращает значение в этом поле ввода, но None вместо.Как сделать это правильно, чтобы получить значение из этого поля ввода?

Ответы [ 2 ]

0 голосов
/ 27 февраля 2019

С помощью get_attribute вы можете получить любой атрибут элемента!в вашем случае:

element.get_attribute("value")

Как прокомментировал @Guy текст не является частью HTML , поэтому не используйте:

element.text
0 голосов
/ 27 февраля 2019

Вам необходимо вернуть значение

driver.execute_script('return arguments[0].value;', element)

Вы также можете использовать get_attribute()

element.get_attribute('value')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...