다음 HTML 페이지가 있고 파이썬에서 Selenium을 사용하여 페이지 HTML에서 일부 데이터를 추출하고 있습니다.
<div class="secondary-content-col col-xs-12">
<div class="row">
<div class="col-xs-12">
<h2 class="h4"><span>Uthyres av:</span> Test</h2>
</div>
</div>
</div>
태그 에서 테스트 텍스트 를 얻고 싶습니다.
driver.find_elements_by_xpath("//*[contains(., 'Uthyres')]")
그러나 그것은 요소를 찾을 수 없다고 말합니다! 어떻게 해결할 수 있을까?
이것을 시도해 볼 수 있습니다 xpath
.
//*[contains(text(), 'Uthyres')]/parent::*/text()
대신 contains(., ...)
사용 contains(text(), ...)
하고 상위 노드로 이동하여 텍스트를 추출하십시오. 참고 여기서 테스트 는 h2
대신 태그의 텍스트 노드 입니다 span
.
다음을 사용한 데모 lxml
:
from lxml import etree
e = etree.fromstring("""<div class="secondary-content-col col-xs-12">
<div class="row">
<div class="col-xs-12">
<h2 class="h4"><span>Uthyres av:</span> Test</h2>
</div>
</div>
</div>""")
e.xpath('//*[contains(text(), "Uthyres")]/parent::*/text()')
# [' Test']
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다