首页 > 解决方案 > 创建多个具有不同名称的数据框

问题描述

我正在抓取网站的表格以创建多个数据框。代码如下所示:

import pandas as pd
from bs4 import BeautifulSoup
from pandas import ExcelWriter


def get_soup(url):
    soup = BeautifulSoup(requests.get(url).text, "html.parser")
    return soup 
url = "https://www.njcaa.org/sports/bsb/2018-19/div1/teams/arizonawesterncollege?view=lineup"
soup = get_soup(url)


#################
writer = pd.ExcelWriter("output.xlsx")

for i, table in enumerate(soup.find_all("table", class_="kio2 portrait"), 1):
    df = pd.read_html(str(table))[0]
    
    caption = table.get("summary", "").replace(":", "").strip()
    if len(caption) > 30:
        caption = caption[0:30]
    else:
        caption = caption
    if not caption:
        caption = f"table {i}"
    
    
    name = "df" + "_" + caption
        
      
    df.to_excel(writer, sheet_name=caption)

writer.save()

但是如何将每个数据框重命名为我创建的名为“name”的变量?

标签: pythonhtmldataframe

解决方案


推荐阅读