首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过Web API在Excel中嵌套JSON

通过Web API在Excel中嵌套JSON
EN

Stack Overflow用户
提问于 2018-04-02 21:13:34
回答 1查看 378关注 0票数 1

我试图从一个嵌套的JSON模式中提取web分析数据,使用Excels Power查询功能从互联网上获取数据。该架构具有以下结构:

代码语言:javascript
复制
// Contents of "~/sites"
{
  "id": 1852274,
  "url": "http://link-to-a-site.com",
  "pages": 10,
  "visits": 1356,
  "_links": {
    "site": {
      "href": "~/sites/1852274"
    }
  },
  (200 entries)
}

// Contents of "~/sites/1852274"
{
  "id": 1852274,
  "url": "http://link-to-a-site.com",
  "_links": {
    "analytics": {
      "overview": {
        "summary": {
          "href": "~/sites/1852274/analytics/overview/summary"
         },
        "groups": {
          "href": "~/sites/1852274/analytics/overview/groups"
        }
      },
      "behavior": {
        "visit_depth": {
          "href": "~/sites/1852274/analytics/behavior/visit_depth"
        },
        "visit_length": {
          "href": "~/sites/1852274/analytics/behavior/visit_length"
        }
      },
     (50 entries)
    }
  }

// Full contents of "~/sites/1852274/analytics/overview/summary
{
  "bounce_rate": 36.36,
  "new_visitors": 6,
  "page_views": 31,
  "returning_visitors": 5,
  "unique_visitors": 11,
  "visits": 11,
}

其中第一模式提供到站点特定数据的链接。所以我的问题是,我如何从~/站点访问链接中引用的数据?

条目太多,无法手动连接到它所引用的站点。

EN

回答 1

Stack Overflow用户

发布于 2018-04-02 22:11:14

为了提取数据,为了演示,我在JSON文件中添加了第二个条目。

JSON:

代码语言:javascript
复制
{
"ids": [
{
  "id": 1852274,
  "url": "http://link-to-a-site.com",
  "pages": 10,
  "visits": 1356,
  "_links": {
    "site": {
      "href": "~/sites/1852274"
    }
  }
},
{
  "id": 1852274,
  "url": "http://link-to-a-site.com",
  "pages": 10,
  "visits": 1356,
  "_links": {
    "site": {
      "href": "~/sites/1852274"
    }
  }
},
]
}

将其转换为包含href作为列的表的增强查询代码如下:

代码语言:javascript
复制
let
    Source = Json.Document(File.Contents("C:\Users\XXX\Desktop\test.json")),
    #"Converted to Table" = Record.ToTable(Source),
    #"Expanded Value" = Table.ExpandListColumn(#"Converted to Table", "Value"),
    #"Expanded Value1" = Table.ExpandRecordColumn(#"Expanded Value", "Value", {"id", "url", "pages", "visits", "_links"}, {"id", "url", "pages", "visits", "_links"}),
    #"Expanded _links" = Table.ExpandRecordColumn(#"Expanded Value1", "_links", {"site"}, {"site"}),
    #"Expanded site" = Table.ExpandRecordColumn(#"Expanded _links", "site", {"href"}, {"href"})
in
    #"Expanded site"

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49612006

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档