【问题标题】:Converting html to dict using pandas使用 pandas 将 html 转换为 dict
【发布时间】:2021-03-31 05:18:07
【问题描述】:

我正在尝试使用 pandas 将 HTML 表格转换为字典。 我正在用漂亮的汤提取 HTML 并盯着 tables 变量。

这是 DataFrame 的样子:

   Date        Value
0  2019          31
1  2018          11
2  2017          11
3  2016          10
4  2015          99
5  2014          98

这就是我正在做的事情

 df = pd.read_html(str(tables), flavor='lxml')[0]
 final = df.to_dict(orient='index')
 return final

这是我的结果

  "0": {
    "Date": "2019",
    "Value": "31"
  },
  "1": {
    "Date": "2018",
    "Value": "11"
  },
  "2": {
    "Date": "2017",
    "Value": "11"
  },
  "3": {
    "Date": "2016",
    "Value": "10"
  },
  "4": {
    "Date": "2015",
    "Value": "99"
  },
  "5": {
    "Date": "2014",
    "Value": "98"
  }
}

我正在寻找这样的输出:

"Values" : [ 
                { "Date":  "2019",
                   "value" : "31"
                },
                { "Date":  "2018",
                   "value" : "11"
                },
                { "Date":  "2017",
                   "value" : "11"
                  },
                  { "Date":  "2016",
                    "value" : "10"
                  },
                  { "Date":  "2015",
                    "value" : "99"
                  },
                  { "Date":  "2014",
                    "value" : "98"
                  }
                ]
 



【问题讨论】:

    标签: python html pandas beautifulsoup


    【解决方案1】:

    不是:

    df.to_dict(orient='index')
    

    做:

    df.to_dict(orient='record')
    

    【讨论】:

    • 当我使用“记录”时,我得到这个错误:'list' object is not a mapping@adir
    • 抱歉,没有提供足够的错误信息
    【解决方案2】:

    上面的答案是有效的,但我认为有一个意外错误。 所以,应该是df.to_dict(orient='record')

    【讨论】:

    猜你喜欢
    • 2017-01-28
    • 2020-02-09
    • 2021-07-16
    • 2021-11-06
    • 2016-02-15
    • 2013-12-28
    • 2018-10-26
    • 2016-10-03
    • 2018-02-08
    相关资源
    最近更新 更多