【发布时间】:2013-10-31 13:18:11
【问题描述】:
我正在尝试使用 BeautifulSoup 提取文本。
这里是html:
<div>
"BLABLA"
<span> "RRRRR" </span>
<span> "ZZZZZ" </span>
</div>
我只想得到'BLABLA' 和'RRRR' 并搭上'ZZZZ'
当然soup.text给了我3条短信。
一种解决方案是迭代直到我找到第二个跨度(如在这个问题中:How to get all text between just two specified tags using BeautifulSoup?)
但是在这种情况下有更好的解决方案吗?
【问题讨论】:
-
为什么你找到的方法不起作用?正则表达式是一种选择
-
它会起作用的。我只是想知道在这种情况下是否有更好的解决方案(这与我找到的解决方案不同)。
-
如果你有这个 html,那么你可以这样做:
soup.div.contents[0]和soup.div.span.text。如果没有,那就没有更好的方法了。
标签: python beautifulsoup screen-scraping