You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将CSV中存储的HTML表格字符串转换为可索引的DataFrame?

解决方法

你的问题出在pd.read_html()的返回值上——它会返回一个包含所有解析到的表格的DataFrame列表,而不是单个DataFrame,所以直接赋值的HTML_DF其实是列表,自然没法直接按列名索引。

最优实现步骤:

  • 读取CSV文件,提取目标字段中的HTML字符串
  • 用pd.read_html()解析HTML,从返回的列表中取出第一个(也是唯一的)DataFrame
  • 此时得到的DataFrame就支持直接通过列名访问数据

修正后的代码:

import pandas as pd

# 读取CSV文件
CSV_File = pd.read_csv(csv_file, index_col=None, header=0)
# 提取HTML字符串
HTML = CSV_File['HTML_Data'][0]
# 解析HTML表格,取列表中的第一个DataFrame
HTML_DF = pd.read_html(HTML)[0]

# 现在可以直接引用列
print(HTML_DF['Drink'])

补充说明:

  • 你的HTML末尾的</div>属于多余标签,pd.read_html()会自动忽略这类不影响表格结构的无效标签,无需手动处理
  • 如果你的HTML中包含多个表格,只需要根据表格位置调整列表索引(比如[1]取第二个表格)

内容的提问来源于stack exchange,提问作者Phil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 01:02:07