有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'