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

如何用Python从指定网站交互式图表提取数据并保存为DataFrame

从Gassco网站提取交互式图表数据并转为DataFrame

1. 定位数据接口

打开浏览器开发者工具(按F12),切换到「网络」标签页,刷新目标页面后筛选XHR/fetch类型请求,就能找到图表数据对应的API接口。该网站的这类数据一般来自https://umm.gassco.no/api/reductionFields接口。

2. 完善代码获取并转换数据

基于你已有的会话代码,直接请求数据接口,解析返回的JSON后转成DataFrame:

import requests
import pandas as pd

# 初始化会话并完成免责声明确认
s = requests.session()
s.get("https://umm.gassco.no/reductionFields")
s.get("https://umm.gassco.no/disclaimer/acceptDisclaimer?")

# 请求数据接口
res = s.get("https://umm.gassco.no/api/reductionFields")
raw_data = res.json()

# 转换为DataFrame(根据实际JSON结构调整,假设核心数据在'data'字段下)
df = pd.DataFrame(raw_data.get('data', []))

# 可选:如果数据嵌套层级深,用json_normalize扁平化
# df = pd.json_normalize(raw_data.get('data', []))

# 查看或保存数据
print(df.head())
df.to_csv('reduction_fields_data.csv', index=False)

3. 额外注意事项

  • 如果接口需要特定参数(比如时间范围),从开发者工具的请求参数里复制对应的键值对,加到get请求的params参数中即可,例如:
    params = {'startDate': '2023-01-01', 'endDate': '2023-12-31'}
    res = s.get("https://umm.gassco.no/api/reductionFields", params=params)
    
  • 若返回的JSON结构和预期不符,打印raw_data查看具体结构,调整数据提取的字段路径。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 08:07:24