Вы почти у цели. Попробуйте что-то вроде этого:
from bs4 import Tag
table_rows = soup.select('tr td')
for tr in table_rows:
if tr.text == 'Sir Charles Gairdner Hospital':
for ns in tr.next_siblings:
if isinstance(ns,Tag):
print(ns.text)
Другая альтернатива:
table = soup.select('table')[0]
for row in table:
if isinstance(row,Tag):
tds = row.select('td')
if len(tds)>0 and tds[0].text=='Sir Charles Gairdner Hospital':
for td in tds:
print(td.text)
Вывод:
73
5
36
Изменить: чтобы распечатать только время ожидания сортировки для этого места, использовать:
for tr in table_rows:
if tr.text == 'Sir Charles Gairdner Hospital':
print(tr.next_sibling.text) #note: it's "next_sibling", not "siblings" this time