Я пытаюсь найти и напечатать все теги h3, которые содержат месяцы, которые меня интересуют. Для этого я попытался создать цикл for моего объекта bs4 (head
) и оператор if внутри него, указав для выведите строку, которая удовлетворяет условию; что в этом случае будет, если строка (месяц) находится в строке. У меня проблема, даже если указанные месяцы существуют в объекте / строках bs4, они не печатаются в моем операторе if.
Я пытался добавить год к месяцам, и это, похоже, решило проблему, хотя и не идеально. Кроме того, я проверил логику моего метода, составив короткий список некоторых строк (вручную) и выполнив цикл for с этим списком вместо объекта bs4 (head
)
import requests
from bs4 import BeautifulSoup
page=requests.get('https://www.england.nhs.uk/statistics/statistical-work-areas/delayed-transfers-of-care/statistical-work-areas-delayed-transfers-of-care-delayed-transfers-of-care-data-2018-19/')
soup=BeautifulSoup(page.text,'html.parser')
text=soup.find(class_='rich-text')
head = text.find_all('h3')
for row in head:
for r1 in ['January','February']:
if r1 in row:
print(row)
else:
continue
Ожидаемые результаты
<h3>February 2019</h3>
<h3>January 2019</h3>
Результаты, которые я получаю, не существуют, так как ничего не распечатано