Вы были близки. Внутри родительского узла <div class id="offerHistory">
:
<div class id="offerHistory">
<div class="theTitle">…</div>
<br>
<p>…</p>
<br>
<h3>Title</h3>
</div>
Существует только один тег <h3>
, который корректно возвращается:
title = offerHistory.find_elements_by_tag_name('h3')
Так, когда вы print(title)
, элемент печатается как:
[<selenium.webdriver.remote.webelement.WebElement (session="d7aef4eab17ec32e0280c1177b5016d9", element="eaf8e28e-9620-4e94-81a8-f7e13edc2c48")>]
В вашем сценарии использования вы хотите извлечь текст Заголовок из узла <h3>
, и вы можете использовать любую из следующих Стратегий поиска :
Использование css_selector
и get_attribute()
:
print(driver.find_element_by_css_selector("div#offerHistory h3").get_attribute("innerHTML"))
Использование xpath
и текст атрибут:
print(driver.find_element_by_xpath("//div[@id='offerHistory']//h3").text)