Удалите избыточные имена классов в HTML, используя BeautifulSoup - PullRequest
0 голосов
/ 12 марта 2020

Я хочу преобразовать:

<span class = "foo">data-1</span>
<span class = "foo">data-2</span>
<span class = "foo">data-3</span>

в

<span class = "foo"> data-1 data-2 data-3 </span>

Используя BeautifulSoup в Python. Эта HTML часть существует в нескольких областях тела страницы, поэтому я хочу минимизировать эту часть и удалить ее. На самом деле середина span была с классом em, поэтому изначально была отделена.

1 Ответ

0 голосов
/ 12 марта 2020

Адаптировано из этого ответа , чтобы показать, как это можно использовать для ваших span тегов:

span_tags = container.find_all('span')

# combine all the text from b tags
text = ''.join(span.get_text(strip=True) for span in span_tags)

# here you choose a tag you want to preserve and update its text
span_main = span_tags[0]  # you can target it however you want, I just take the first one from the list
span_main.span.string = text  # replace the text

for tag in span_tags:
    if tag is not span_main:
        tag.decompose()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...