BeautifulSoup 中是不是有 InnerText 等价物?

Posted

技术标签:

【中文标题】BeautifulSoup 中是不是有 InnerText 等价物?【英文标题】:Is there an InnerText equivalent in BeautifulSoup?BeautifulSoup 中是否有 InnerText 等价物? 【发布时间】:2012-02-18 02:44:23 【问题描述】:

使用下面的代码:

soup = BeautifulSoup(page.read(), fromEncoding="utf-8")
result = soup.find('div', 'class' :'flagPageTitle')

我得到以下 html

<div id="ctl00_ContentPlaceHolder1_Item65404" class="flagPageTitle" style=" ">
<span></span><p>Some text here</p>
</div>

我怎样才能在没有任何标签的情况下获得Some text hereBeautifulSoup 中是否有 InnerText 等价物?

【问题讨论】:

【参考方案1】:

你只需要:

result = soup.find('div', 'class' :'flagPageTitle').text

【讨论】:

【参考方案2】:

您可以搜索&lt;p&gt; 并获取其文本:

soup = BeautifulSoup.BeautifulSoup(page.read(), fromEncoding="utf-8")
result = soup.find('div', 'class': 'flagPageTitle')
result = result.find('p').text

【讨论】:

谢谢。实际上,我正在寻找无需额外find 的方法。在您的场景中,我也可以使用result.find('p').contents[0]【参考方案3】:

您可以使用findAll(text=True) 仅查找文本节点。

result = u''.join(result.findAll(text=True))

【讨论】:

以上是关于BeautifulSoup 中是不是有 InnerText 等价物?的主要内容,如果未能解决你的问题,请参考以下文章

BeautifulSoup 中是不是有 InnerText 等价物?

测试beautifulsoup中是不是存在children标签

BeautifulSoup find_all() 是不是保留标签顺序?

使用 INNER JOIN 或 EXISTS 在 m2m 关系中查找属于多个是不是更好?

什么时候应该使用 INNER -LOOP- JOIN 而不是 INNER JOIN

即使使用 INNER JOIN 而不是 IN,MySQL 查询也非常慢