【发布时间】:2016-05-18 13:48:40
【问题描述】:
我正在尝试创建一个函数来告诉我文本中每个单词的标签类别。
我的 html 是这样的:
<p>
<span class="A">I am </span>
<span class="B"><span class="C"> not </span> doing a great job </span>
</p>
所以我想创建一个返回列表的函数:
[["I", A], ["am", A], ["not", C], ["doing", B], ["a", B], ["great", B], ["job", B]]
我尝试使用 FindAll('span', recursive=False) 循环所有跨度,并检查每个跨度是否有孩子,但我总是得到双打。 例如,我会得到“做得不好”和“不好”。
for p in p_tags:
my_tag_list = []
spans = p.findAll("span", recursive=False)
for s in spans:
text = s.text.split()
for t in text:
my_tag = []
my_tag.append(t)
my_tag.append(s["class"][0])
我查看了文档,但似乎没有找到任何方法可以让我获得文本及其周围的直接跨度。
提前感谢您的帮助, 亲切的问候
【问题讨论】:
标签: python html beautifulsoup