Вы можете перебирать содержимое вашего HTML следующим образом (при условии, что ваши данные хранятся в html_data
):
import bs4
soup = BeautifulSoup(html_data)
my_list = []
for i in range(len(soup.body.contents), step=3):
my_list.append({'title1': soup.body.contents[i], 'url': soup.body.contents[i+1], 'title2': soup.body.contents[i+2]})
Это, конечно, работает только при условии, что ваши данные находятся на одном уровнеи не вложен никак.Если это не так, то вы должны опубликовать действительный кусок ваших тестовых данных и их структуру.