我知道如何在 Open 精炼中解析 json 单元格,但这对我来说太棘手了。
我使用 API 提取了 4730 个 AirBNB 房间的日历,由它们的 ID 标识。
这是一个 Json 文件的示例:https://fr.airbnb.com/api/v2/calendar_months?key=d306zoyjsyarp7ifhu67rjxn52tv0t20¤cy=EUR&locale=fr&listing_id=4212133&month=11&year=2016&count=12&_format=with_conditions
对于从现在到 2017 年 11 月的每个 ID 和一年中的每一天,我想提取这些房间的可用性(真或假)及其当天的价格。
我不知道如何解析这些信息。我猜这意味着一系列嵌套的 forEach,但我找不到使用 Open Refine 执行此操作的正确方法。
我当然试过了
forEach(value.parseJson().calendar_months, e, e.days)
结果是一系列的字典数组扰乱了我。
任何帮助将不胜感激。如果在 Open Refine 中操作太困难,使用 R(或 Python)的解决方案对我来说也不错。
最佳答案
而不是仅仅将您的项目创建为文本,并使用 GREL 来解析...
最好的方法是使用我们的可视化导入器向导为 JSON 文件和 XML 文件选择您想要使用的 JSON 记录部分(您甚至可以使用指向 JSON 文件的 URL,如您的示例中所示)。 (视频教程在这里展示了如何:https://www.youtube.com/watch?v=vUxdB-nl0Bw)
随意拿这个例子,让它更好,对所有人更有帮助,将它添加到我们的 Wiki 部分 How to Use
关于json - 使用 OpenRefine(或 R)解析大而复杂的 Json 文件的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40715596/