Pandas - How To Put This Into A DataFrame

My output prints out fine, but I need to put this in a dataframe. I realize it is difficult as it wont be an equal matrix (like 2x2, 3x3 etc)

For reference, the website is in the requests.get parameter (line 6)

Hoping there is a way.

import requests
from bs4 import BeautifulSoup
import pandas as pd

page_source = requests.get(
    'https://s7.goeshow.com/apa/annual/2021/session_search.cfm?_ga=2.259773066.1015449088.1617295032-97934194.1617037074').text
soup = BeautifulSoup(page_source, 'lxml')

for session in soup.select('tr:has(.heading), tr:has(.heading) + tr'):
    print(session.select_one('a strong').text.strip())

    for speaker in session.select('.session-speaker'):
        role = speaker.select_one('.session-speaker-role').text.strip()
        name = speaker.select_one('.session-speaker-name').text.strip()
        print(role, name)

    print('labels: ', [i.text.strip() for i in session.select('.session-track-label')])
    print()