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

如何用Python抓取NIST铜数据网页左侧指定表格并导出CSV

解决NIST铜元素X射线质量系数表格抓取问题

问题需求

抓取NIST铜元素数据页面中左侧标题为“HTML table format”的表格,仅保留目标列(第二、第三列数值),并保存为CSV文件。原代码无法输出正确格式的表格。

原代码问题

原代码未精准定位目标表格,且表头设置不符合页面表格结构,导致抓取的表格列混乱、内容错误。

修正后的代码

import pandas as pd

# 铜元素数据页面URL
url = "https://physics.nist.gov/PhysRefData/XrayMassCoef/ElemTab/z29.html"

# 匹配目标表格,指定表头位于表格第2行(索引从0开始)
tables = pd.read_html(url, match="HTML table format", header=1)
target_df = tables[0]

# 提取第二、第三列(索引1和2)
filtered_df = target_df.iloc[:, [1, 2]]

# 保存为CSV文件,不保留索引列
filtered_df.to_csv("nist_copper_data.csv", index=False)

代码说明

  • match="HTML table format":精准定位页面中标题为“HTML table format”的表格,避免抓取页面内其他无关表格
  • header=1:指定表格的表头行是第2行(原表格第一行是标题文本,第二行才是列名)
  • iloc[:, [1, 2]]:通过位置索引提取第二、第三列数据
  • index=False:保存CSV时不写入行索引,保证输出格式简洁规范

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 23:55:20