web-scraping - 如何在 BeautifulSoup 中只获取标签的内部文本,不包括嵌入的?

标签 web-scraping beautifulsoup screen-scraping urllib2 python-requests

例如,

<ul>
    <li>
        <b>Hey, sexy!</b>
        Hello
    </li>
</ul>

我只想要 li 标记中的“Hello”。

如果我使用 soup.find("ul").li.text 它也包含 b 标签。

最佳答案

您可以使用 find像这样的功能

from bs4 import BeautifulSoup

html = '''<ul><li><b>Hey, sexy!</b>Hello</li></ul>'''
soup = BeautifulSoup(html)
print soup.find('li').find(text=True, recursive=False)

关于web-scraping - 如何在 BeautifulSoup 中只获取标签的内部文本,不包括嵌入的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28685753/

相关文章:

python - 需要使用 RegEx 和 BeautifulSoup 查找文本

python - NO_CALLBACK 在不应该被调用的情况下被调用

python - (Beautiful Soup) 获取按钮标签内的数据

python - 使用 scrapy 抓取雅虎组的问题

javascript - 如何绕过 401 未经授权的错误?

python - 如何在 Python 中使用 Beautifulsoup 查找 div 内的所有 anchor 标签

python - 我如何从 HTML 文件中提取我需要的数据?

python - 使用selenium获取动态html表并使用beautifulsoup解析它

html - 如何在 bash 中从 html 中提取 td?

python - 弹出div内的Selenium Scroll