Как я могу очистить следующую структуру, чтобы получить только h3, класс h4 выше h5 string = "Prem League" и div class = "fixres_item" непосредственно под строкой h5 "Prem League".
Я бы хотелтекст из h3, h4 и внутри div. Мне нужен текст из span, внутри span
Так что, когда строка класса h5 - Prem League, я хочу, чтобы h4 и h3 находились непосредственно над ним, а также мне нужен гейт.различные элементы нашего fixres_item прямо под строкой класса h5 = Премьер-лига
<div class="fixres__body" data-url="" data-view="fixture-update" data-controller="fixture-update" data-fn="live-refresh" data-sport="football" data-lite="true" id="widgetLite-6">
<h3 class="fixres__header1">November 2018</h3>
<h4 class="fixres__header2">Saturday 24th November</h4>
<h5 class="fixres__header3">Prem League</h5>
<div class="fixres__item">stuff in here</div>
<h4 class="fixres__header2">Wednesday 28th November</h4>
<h5 class="fixres__header3">UEFA Champ League</h5>
<div class="fixres__item">stuff in here</div>
<h3 class="fixres__header1">December 2018</h3>
<h4 class="fixres__header2">Sunday 2nd December</h4>
<h5 class="fixres__header3">Prem League</h5>
<div class="fixres__item">stuff in here</div>
Это код, который у меня есть, но он включает в себя данные из разделов ниже строки h5 "Лига чемпионов ЕСФА" - что я и делаюне хочу.Я только хочу получить данные от div, которые находятся ниже h5 под заголовком «Премьер-лига».Например, я не хочу, чтобы PSG отображался в выходных данных, потому что он исходит от div ниже заголовка h5 "Лига чемпионов ЕСФА"
Мой код -
def squad_fixtures():
team_table = ['https://someurl.com/liverpool-fixtures']
for i in team_table:
# team_fixture_urls = [i.replace('-squad', '-fixtures') for i in team_table]
squad_r = requests.get(i)
premier_squad_soup = BeautifulSoup(squad_r.text, 'html.parser')
# print(premier_squad_soup)
premier_fix_body = premier_squad_soup.find('div', {'class': 'fixres__body'})
# print(premier_fix_body)
premier_fix_divs = premier_fix_body.find_all('div', {'class': 'fixres__item'})
for i in premier_fix_divs:
team_home = i.find_all('span', {'class': 'matches__item-col matches__participant matches__participant--side1'})
for i in team_home:
team_home_names = i.find('span', {'class': 'swap-text--bp30'})['title']
team_home_namesall.append(team_home_names)
print(team_home_namesall)
Выход
['Watford',' PSG ',' Ливерпуль ',' Бернли ',' B'mouth ',' Ливерпуль ',' Ливерпуль ',' Волки ',' Ливерпуль ',' Ливерпуль ',' Man City ',' Брайтон ','Ливерпуль »,« Ливерпуль »,« Вест Хэм »,« Ливерпуль »,« Манчестер Юнайтед »,« Ливерпуль »,« Эвертон »,« Ливерпуль »,« Фулхэм »,« Ливерпуль »,« Со'тон »,« Ливерпуль », «Кардифф», «Ливерпуль», «Ньюкасл», «Ливерпуль»]