用途:演示端到端数据工程流程,使用哈佛艺术博物馆 API 抽取藏品数据,转换为关系型表后加载到 SQL 数据库,并通过 Streamlit 仪表盘进行交互式分析。
主要能力:分页抓取 API 藏品数据;将嵌套 JSON 转换为规范化关系表;创建并填充 artifactmetadata、artifactmedia、artifactcolors 三张表;提供 20+ 条预定义 SQL 分析查询;Streamlit 仪表盘配合 Plotly 图表展示结果。
使用方式:克隆仓库并进入目录,安装依赖 pip install -r requirements.txt;设置环境变量 HARVARD_API_KEY、DB_HOST、DB_USER、DB_PASSWORD、DB_NAME;确保拥有 MySQL/TiDB 数据库及上述三张表;运行 streamlit run app.py,应用地址为 http://localhost:8501。
适用场景:数据工程教学与演示、博物馆藏品数据分析、ETL 流程原型。
限制与注意事项:需自行申请哈佛 API Key 并配置数据库;依赖 streamlit、pandas、requests、pymysql、plotly、python-dotenv;API 有速率限制,需加入延迟或指数退避;大数量数据需分批处理;资料未提供收费、价格及效果数据。