Извлечение <br>записей из проанализированных HTML-данных с использованием Beautifulsoup - PullRequest
0 голосов
/ 24 сентября 2018

У меня есть текстовые данные онлайн, как это:

    plain_text= "<a href="/url?q=https://www.aarnoldmovingcompany.com/contact-us/&amp;sa=U&amp;ved=0ahUKEwCgAMAA&amp;usg=AOvVaw1pasRFOwk">
        </b> Moving Louisville - Headquarters.<br>
commercial moving services nationwide. Visit our website today to learn more!<br><div class="osl">
<br>
         5200 Interchange Way Louisville, KY 40229.<br>
         ... <b> A. Arnold</b>"

Я пытаюсь извлечь из этого текста все теги <br>, поэтому вывод будет выглядеть следующим образом:

commercial moving services nationwide. Visit our website today to learn more

5200 Interchange Way Louisville, KY 40229.

Thisу меня не работает:

 soup=BeautifulSoup(plain_text,"lxml")
 out=soup.find_all('br')

Меня бросает:

[<br/>,
 <br/>]

1 Ответ

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

Вы можете использовать next_sibling, проверьте код ниже.

from bs4 import BeautifulSoup
text = """<a href="/url?q=https://www.aarnoldmovingcompany.com/contact-us/&amp;sa=U&amp;ved=0ahUKEwCgAMAA&amp;usg=AOvVaw1pasRFOwk">
        </b> Moving Louisville - Headquarters.<br>
commercial moving services nationwide. Visit our website today to learn more!<br><div class="osl">
<br>
         5200 Interchange Way Louisville, KY 40229.<br>
         ... <b> A. Arnold</b>"""

soup = BeautifulSoup(text,'lxml')
name = soup.br.next_sibling
address = name.next.next.text.strip()
print(name, '\n', address)

Выход

 commercial moving services nationwide. Visit our website today to learn more!
 5200 Interchange Way Louisville, KY 40229.
         ...  A. Arnold
...