从Web API直接爬取JSON并自动清洗:全程无代码操作
使用Power Query从需要OAuth2认证的API获取数据,解析嵌套JSON并自动展开,创建动态刷新报表。 · 难度:入门 · +10XP
从Web API直接爬取JSON并自动清洗:全程无代码操作
本教程脱离VBA,完全使用Power Query的Web.Contents函数处理需要Bearer Token的REST API。首先演示如何通过匿名请求获取token,然后使用Headers参数传递认证信息。重点讲解Json.Document与Record.TransformFields配合清洗数据:处理空值、转换日期格式、拆分嵌套数组。案例:从GitHub API获取仓库issue列表,自动生成统计仪表板。最后设置定时刷新。
let
Token = "ghp_yourtoken",
Source = Web.Contents("https://api.github.com/repos/microsoft/vscode/issues",[
Headers=[Authorization="Bearer " & Token, Accept="application/vnd.github.v3+json"]
]),
Json = Json.Document(Source),
#"Converted to Table" = Table.FromList(Json, Splitter.SplitByNothing()),
#"Expanded Column1" = Table.ExpandRecordColumn(#"Converted to Table", "Column1", {"title", "state", "created_at"})
in
#"Expanded Column1"