python - 如何从此标签中获取所有文本?

标签 python html beautifulsoup html-parsing

我正在尝试从此 HTML 标记中获取所有文本,我将其存储在变量 tag 中:

<td rowspan="2" style="text-align: center;"><a href="/wiki/Glenn_Miller" title="Glenn Miller">Glenn Miller</a> &amp; His Orchestra</td>

结果应该是 "Glenn Miller & His Orchestra"

但是 printing tag.find(text=True) 返回这个:"Glenn Miller"

如何获取 td 元素中的其余文本?

最佳答案

tag.find(text=True) 将返回第一个匹配的文本节点。使用 .get_text()相反:

>>> from bs4 import BeautifulSoup
>>> data = '<td rowspan="2" style="text-align: center;"><a href="/wiki/Glenn_Miller" title="Glenn Miller">Glenn Miller</a> &amp; His Orchestra</td>'
>>> soup = BeautifulSoup(data, "html.parser")
>>> tag = soup.td
>>> tag.get_text()
'Glenn Miller & His Orchestra'

关于python - 如何从此标签中获取所有文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37336326/

相关文章:

python - 从键列表中获取字典中的所有值,其中相同的键多次出现

html - 如何让文本垂直对齐到底部并根据需要填充其上方的空白区域?

html - 打印时 IE10 边框问题 w/Rowspan

python - 如何在Python和beautifulsoup中从CDATA中提取数据?

python - bs4 下载文件甚至 jQuery 点击

python - Keras 中的深度自动编码器将一个维度转换为另一个维度

Python 策略模式 : Dynamically import class files

在捕获屏幕截图时在后台运行的 Python 脚本

php - 为什么我必须使用 POST 而不是 GET?

python - 如何将 HTML 表格转换为 Python 字典