I ran the same exact format for a different website scraper and that worked but for some reason I keep getting an error message for this function. "UnboundLocalError: local variable 'bs' referenced before assignment".
I tried to assign a global variable to bs (the dataframe), the code works but doesn't return anything. I also have tried nested functions but still no luck. This is the 4th time I have used this function format and the other three times they have worked without ever producing the error. Any help would be greatly appreciated.
def barstool(website):
browser = webdriver.Chrome(ChromeDriverManager().install())
browser.get(website)
matches = browser.find_elements_by_class_name('basic-event-row')
sleep(10)
info = []
for match in matches:
    info.append(match.text)
y = []
for x in info:
    y.append(x.split('\n'))
master = []
for x in y:
    for z in x:
        if z == '- -':
            z == 'N/A'
        master.append(z)
removes = ('TODAY', 'TOMORROW', 'FRI', 'SAT', 'SUN', 'MON', 'TUE', 'WED', 'THUR', 'SPREA', 'TOTA', 'More', 'Bets')
for x in range(len(master))[::-1]:
    if master[x].startswith(removes):
        master.remove(master[x])
    else:
        pass
for x in range(len(master)):
    if master[x] == '- -':
        master.insert(x+1, None)
    else:
        pass
dic = {}
for x in range(len(master))[0:13:14]:
    dic['Away Team'] = master[x]
    dic['Home Team'] = master[x+1]
    dic['Away Spread'] = master[x+2]
    dic['Away Spread Odds'] = master[x+3]
    dic['Home Spread'] = master[x+4]
    dic['Home Spread Odds'] = master[x+5]
    dic['team_delete'] = master[x+6]
    dic['Away Moneyline'] = master[x+7]
    dic['team2_delete'] = master[x+8]
    dic['Home Moneyline'] = master[x+9]
    dic['Over'] = master[x+10]
    dic['Over Odds'] = master[x+11]
    dic['Under'] = master[x+12]
    dic['Under Odds'] = master[x+13]
    bs = pd.DataFrame(dic, index=[0])
for x in range(len(master))[14::14]:
    dic = {}
    dic['Away Team'] = master[x]
    dic['Home Team'] = master[x+1]
    dic['Away Spread'] = master[x+2]
    dic['Away Spread Odds'] = master[x+3]
    dic['Home Spread'] = master[x+4]
    dic['Home Spread Odds'] = master[x+5]
    dic['team_delete'] = master[x+6]
    dic['Away Moneyline'] = master[x+7]
    dic['team2_delete'] = master[x+8]
    dic['Home Moneyline'] = master[x+9]
    dic['Over'] = master[x+10]
    dic['Over Odds'] = master[x+11]
    dic['Under'] = master[x+12]
    dic['Under Odds'] = master[x+13]
    bs2 = pd.DataFrame(dic, index=[0])
    bs = bs.append(bs2) 
return bs
