我想使用自动化(使用任何Python或JS库)将以下Excel转换为JSON模板。
我的Excel格式如下:https://docs.google.com/spreadsheets/d/1-vwP_R77dSQsAngfAHQJojd-SR6ncjLYWSpJrxpKbL4/edit?usp=sharing
JSON输出如下:
[
{
"Old Field Name": "PRIORITY",
"Old Field Label": "Priority",
"New Field Label": "Priority",
"New Field Name": "Priority",
"Conversion": [
{
"Method": "Mapping",
"Mapping": [
"1-high : High",
"2-medium : Medium",
"3-low : Low"
]
}
]
},
{
"Old Field Name": "REVIEWER",
"Old Field Label": "Reviewer",
"New Field Label": "Author",
"New Field Name": "Author",
"Conversion": [
{
"Method": "CONCAT",
"Conversion": "Reviewer + <REVIEWER>"
}
]
},
{
"Old Field Name": "NAME",
"Old Field Label": "Name",
"New Field Label": "Head",
"New Field Name": "Head"
}
]
有人可以建议任何步骤来实现以下到嵌套JSON的转换,如上面所示,或任何工作来自动化以下场景。
**注意:**我期待JS或Python解决方案,但我也很喜欢C#库或任何JAVA库。
2条答案
按热度按时间exdqitrt1#
我已经提出了以下作为一个独立的脚本:
为了使用它,你需要NodeJS并使用
npm i papaparse
安装papaparse。如果可能的话,为了更好的可扩展性,你可以考虑使用
CONCAT
或concat
作为键,而不是Conversion
,在适当的情况下,我们可以应用一个通用规则“以转换方法为键”,这样写:如果你有任何问题,请告诉我!:)
nnsrf1az2#
这里有一个JS/Node的解决方案。js。
第一次从Google Spreadsheet导出为csv。(注意:如果你在Excel中这样做,导出可能会略有不同,所以我从谷歌电子表格导出)。
这是我得到的CSV,保存为MigrationTool。csv
接下来编写JavaScript代码进行转换,这实际上相当棘手,但这里是:
运行该程序,您将在名为MigrationTool的文件中获得此JSON。json:
最后,得到报酬?:D不,这很好,这是一个有趣的代码挑战。:)