【问题标题】:organise .json data to pandas dataframe/excel将 .json 数据组织到 pandas 数据框/excel
【发布时间】:2021-12-22 08:59:22
【问题描述】:

我从https://liiga.fi/tilastot/joukkueet 抓取的统计数据取得了一些进展。

编辑。现在我找到了更好的方法。例如 -> https://liiga.fi/api/v1/teams/stats/2017/runkosarja/

我如何从那里抓取统计数据,如胜利、进球等并创建统计数据表?

【问题讨论】:

    标签: python json pandas web-scraping


    【解决方案1】:

    只得到这个:

    id  season  ...              cacheUpdateDate buyTicketsUrl
    0       1    2022  ...  2021-11-09T16:54:56.243678Z           NaN
    1       4    2022  ...  2021-11-09T16:30:45.387198Z           NaN
    2       3    2022  ...  2021-11-09T16:57:55.660414Z           NaN
    3       2    2022  ...  2021-11-09T17:05:34.763264Z           NaN
    4       6    2022  ...  2021-11-09T16:52:37.081451Z           NaN
    ..    ...     ...  ...                          ...           ...
    518  6909    2022  ...  2021-11-09T17:26:48.886193Z           NaN
    519  6898    2022  ...  2021-11-09T16:54:08.527658Z           NaN
    520  6902    2022  ...  2021-11-09T16:30:00.998782Z           NaN
    521  6910    2022  ...  2021-11-09T17:05:19.950635Z           NaN
    522  6906    2022  ...  2021-11-09T16:39:19.910866Z           NaN
    
    [523 rows x 11 columns]
    

    【讨论】:

    • 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center
    【解决方案2】:

    您可以将 Pandas DataFrames 用作:

    import requests
    import json
    import pandas as pd
    
    url = "https://liiga.fi/api/v1/games?tournament=all&season=2021" 
    r = requests.get(url)
    r = r.json()
    
    df = pd.DataFrame(r)
    
    print(df)
    

    由于您要重现积分榜,您仍然需要分析您拥有的原始数据。为了帮助您分析数据,您可以将 homeTeamawayTeam 列分别创建为单独的 DataFrames

    homeTeam_list = [ homeTeam for homeTeam in df['homeTeam']]
    awayTeam_list = [ awayTeam for awayTeam in df['awayTeam']]
    
    df_homeTeam = pd.DataFrame(homeTeam_list)
    df_awayTeam = pd.DataFrame(awayTeam_list)
    
    print(df_awayTeam)
    

    通过这种方式,您可以循环计算每场比赛的得分,谁赢了,桌子得分等等。

    【讨论】:

    • 我指的是积分榜,就像那个页面一样。
    • 哦,如果你想用网站上呈现的所有数据重现积分榜,那么你需要先做一些数据分析。 .json 文件您只包含原始数据,因此您仍然需要确定每支球队的进球数、胜利数等。在这种情况下,您可以为每个游戏创建 DataFrame,然后分析数据以获得所需的指标。 (我将在我的答案中添加这两个 DataFrame)
    猜你喜欢
    • 2013-07-16
    • 2022-06-19
    • 1970-01-01
    • 1970-01-01
    • 2017-05-14
    • 1970-01-01
    • 2012-09-14
    • 2016-06-08
    • 1970-01-01
    相关资源
    最近更新 更多