Как очистить resultset от тегов с помощью beautifulsoup?

Пользователь

от olen.shanahan , в категории: Python , 24 дня назад

Как очистить resultset от тегов с помощью beautifulsoup?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от jazmyne , 23 дня назад

@olen.shanahan 

Для очистки результатов поиска (resultset) от тегов HTML с помощью библиотеки Beautiful Soup можно использовать метод get_text(). Он извлекает только текстовое содержимое элемента и игнорирует все теги HTML внутри элемента.


Пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
from bs4 import BeautifulSoup

# Пример HTML-разметки
html = "<html><body><p>Привет, <strong>Мир!</strong></p></body></html>"

# Создание объекта Beautiful Soup
soup = BeautifulSoup(html, 'html.parser')

# Извлечение текста из результатов поиска
text = soup.get_text()

print(text)


Этот код выведет на экран следующий текст:

1
Привет, Мир!


В данном случае, текстовое содержимое элемента p было извлечено из HTML-разметки, а тег strong был игнорирован. Если результат поиска содержит несколько элементов, то можно использовать метод get_text() в цикле для извлечения текста из каждого элемента:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
from bs4 import BeautifulSoup

# Пример HTML-разметки
html = "<html><body><p>Привет, <strong>Мир!</strong></p><p>До свидания!</p></body></html>"

# Создание объекта Beautiful Soup
soup = BeautifulSoup(html, 'html.parser')

# Извлечение текста из каждого элемента <p>
for paragraph in soup.find_all('p'):
    text = paragraph.get_text()
    print(text)


Этот код выведет на экран следующий текст:

1
2
Привет, Мир!
До свидания!