Невозможно получить строки в одну строку, получая основной текст с помощью Beautifulsoup - PullRequest
0 голосов
/ 04 мая 2019

У меня есть куча XML-файлов, и я пытаюсь извлечь из них файлы с помощью Beautifulsoup. Вот мой код:

text = """
<B510>
<B511><PDAT>G03B 2742</PDAT></B511>
<B512><PDAT>G03B 2758</PDAT></B512>
<B512><PDAT>G03B 2762</PDAT></B512>
<B516><PDAT>7</PDAT></B516>
</B510>
"""

from bs4 import BeautifulSoup
soup = BeautifulSoup(text, 'lxml')

### Classification info
class_info = soup.find_all("b510")
class_info = ", ".join([x.text.strip() for x in class_info])

Вот что я получаю:

G03B 2742
G03B 2758
G03B 2762
7

Почему я не могу вставить текст в одну строку?

1 Ответ

1 голос
/ 04 мая 2019

Учитывая, что <PDAT> должно быть достаточно:

[i.text for i in soup.find('b510').find_all("pdat")]

вывод :

['G03B 2742', 'G03B 2758', 'G03B 2762', '7']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...