Я пытаюсь создать функцию, которая скажет мне класс тега для каждого слова в тексте.Beautifulsoup: получить имя класса для каждого слова
Мой 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 ('пядь ', 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])
Я посмотрел на документацию, но я, кажется, не найти какой-либо метод, который получит мне текст и прямой пролет вокруг него.
Спасибо заранее за любую помощь, Сердечные приветы