Почему при поиске элементов по имени тега возвращается пустая строка? (Не повторяющийся пост) - PullRequest
0 голосов
/ 25 марта 2020

ТАК, я пытаюсь получить содержимое тегов h2 и h3. Вот код (это было во многих divs между прочим)

<div class="flex-container">
  <div class="number">
    <h2>interest</h2>
    <h3>$1285</h3>
  </div>
  <div class="number">
    <h2>Negative</h2>
    <h3>$981724</h3>
  </div>
  <div class="number">
    <h2>quote</h2>
    <h3>$43342</h3>
  </div>
  <div class="number">
    <h2>total</h2>
    <h3>$123456</h3>
  </div>
</div>

И поэтому я попытался сначала скопировать xpath:

container = driver.find_element_by_xpath('//*[@id="content"]/article/div/div/div/dl/dd[1]/div[1]') 

Я получил это, выбрав div class = "flex -containter .. на инспекторе и щелкните правой кнопкой мыши, найдите xpath.

Мой вопрос: я теряюсь, пытаясь найти содержимое h2 и h3, потому что я не знаю, что делать с полученной переменной контейнера Я попробовал это:

table = container.find_elements_by_tag_name('number')

Но он вернул пустой список, я просто догадываюсь и проверяю на этом этапе.

Можете ли вы помочь мне найти надлежащую документацию, чтобы лучше направлять мои внимание на? Мой HTML выглядит просто, я, вероятно, слишком усложняю. Любая помощь будет оценена. Спасибо.

1 Ответ

0 голосов
/ 25 марта 2020

Я не эксперт по использованию селена, но, думаю, вы должны использовать операцию find_elements_by_class_name. В вашем коде HTML нет тега 'номер'. Я думаю, вы ищете элементы, указанные классом «число». Выезд https://selenium-python.readthedocs.io/locating-elements.html

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