有br时,获取文本

当使用xpath获取html页面元素时,如果某个element中包含有<br>标签,使用xpath将无法获取到完整的数据。因为br标签即可以表示数据的开始,也可以表示数据的结束。

# BeautifulSoup
about_us = driver.page_source
about_us_parse = BeautifulSoup(about_us, "lxml")
about_us_parse.p.get_text('', '<br>').strip()

# Selenium xpath
descendant-or-self::text() 选取当前节点的所有后代元素(子、孙等)以及当前节点本身
'//td[@class="listr" and contains(text(), "CN")]//descendant-or-self::td'

 

# 最简单的办法 get_attribute('textContent') 

self.driver.find_elements(By.CSS_SELECTOR,".ocms").get_attribute('textContent') 

posted @ 2023-09-04 10:45  你说夕阳很美  阅读(158)  评论(0)    收藏  举报