Часть HTML выглядит следующим образом. Я хочу извлечь содержимое из тегов 'span':
from bs4 import BeautifulSoup
data = """
<section><h2>Team</h2><ul><li><ul><li><span>J36</span>—<span>John</span></li><li><span>B56</span>—<span>Bratt</span></li><li><span>K3</span>—<span>Kate</span></li></ul></li></ul></section>
... """
soup = BeautifulSoup(data, "html.parser")
classification = soup.find_all('section')[0].find_all('span')
for c in classification:
print (c.text)
Получается:
J36
John
B56
Bratt
K3
Kate
Но требуется:
J36-John
B56-Bratt
K3-Kate
Что такое Правильный ли BeautifulSoup способ извлечь содержимое, кроме указанного ниже? Спасибо.
contents = [c.text for c in classification]
l = contents[0::2]
ll = contents[1::2]
for a in zip(l, ll):
print ('-'.join(a))