Python 3 BS4 - извлечение данных из тегов <span>

Я пытаюсь извлечь данные из тегов span на HTML-странице.

HTML выглядит следующим образом:

<div class = "DataInSpanTags">
   <span>data1</span>
   <span>data2</span>
   <span>data3</span>
</div>

Я использовал следующий сценарий для извлечения:

for TagGrab in soup.find_all('div', class_='DataInSpanTags'):
MoreStats = TagGrab.span.text
print(MoreStats)

Это возвращает только значение из первого тега диапазона «Data1».

Есть ли способ получить остальные данные?

Любая помощь очень ценится.

Из того, что я искал, это встроенный блок

zeeman 14.05.2018 00:15
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
1
1
1 452
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я полагаю, что вас интересует только один <div class = "DataInSpanTags">, поэтому, найдя его с помощью .find('div', class_='DataInSpanTags'), вам нужно найти все теги span внутри него, используя .findAll('span'):

>>> for span in soup.find('div', class_='DataInSpanTags').findAll('span'):
...     print(span.text)
... 
data1
data2
data3

Спасибо тебе за это. Это сработало. Их больше на HTML-странице с другой информацией. Могу ли я взять все «DataInSpanTags» и получить информацию по каждому из них?

zeeman 14.05.2018 19:58

Конечно! Просто используйте for data in soup.findAll('DataInSpanTags'): for span in data.findAll('span'): print(span.text). Пожалуйста, не забудьте ответить принимать, если он был полезен, это общее благо для сообщества.

Vinícius Figueiredo 14.05.2018 20:00

Другие вопросы по теме