仅从此元素提取文本,而不从其子元素提取文本

发布于 2021-01-29 19:34:51

我只想从汤中最上面的元素中提取文本;但是汤.text也会给出所有子元素的文本:

我有

import BeautifulSoup
soup=BeautifulSoup.BeautifulSoup('<html>yes<b>no</b></html>')
print soup.text

输出为yesno。我只想“是”。

实现此目标的最佳方法是什么?

编辑 :我也想yes在解析’ <html><b>no</b>yes</html>‘时输出。

关注者
0
被浏览
156
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    那又如何.find(text=True)呢?

    >>> BeautifulSoup.BeautifulSOAP('<html>yes<b>no</b></html>').find(text=True)
    u'yes'
    >>> BeautifulSoup.BeautifulSOAP('<html><b>no</b>yes</html>').find(text=True)
    u'no'
    

    编辑:

    我想我已经了解了你现在想要的。尝试这个:

    >>> BeautifulSoup.BeautifulSOAP('<html><b>no</b>yes</html>').html.find(text=True, recursive=False)
    u'yes'
    >>> BeautifulSoup.BeautifulSOAP('<html>yes<b>no</b></html>').html.find(text=True, recursive=False)
    u'yes'
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看