Получить span-текст, который не имеет атрибутов, используя Beautiful Soup Python - PullRequest
0 голосов
/ 19 сентября 2018

Я проверяю веб-сайт, и у меня возникают проблемы с получением текста для диапазона.Я видел, что вы можете использовать ниже, чтобы получить текст:

    <span title="9 gold badges"><span class="badge1"></span><span class="badgecount">9</span></span>
    badges = soup.body.find('div', attrs={'class': 'badges'})
    for span in badges.span.find_all('span', recursive=False):
        print span.attrs['title']

Однако промежуток, который я заинтересован в получении текста, не имеет атрибутов.Как я могу получить текст?

     <span>Geolocation: 35.1391, -90.0536</span>

Ответы [ 2 ]

0 голосов
/ 19 сентября 2018

чтобы получить все теги span, у которых нет атрибутов, попробуйте этот фрагмент:

for span in badges.span.find_all('span', recursive=False):
    if not span.attrs.values():
        print (span.text)

надеюсь, что это сработает для вас.

0 голосов
/ 19 сентября 2018

tag.text или tag.get_text ()

for span in badges.span.find_all('span', recursive=False):
    print span.text

Пример вывода:

>>> span = soup.find('span')
>>> span
<span>Geolocation: 35.1391, -90.0536</span>
>>> span.text
'Geolocation: 35.1391, -90.0536'
>>> span.get_text()
'Geolocation: 35.1391, -90.0536'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...