首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用csvkit将json转换为csv时出错

使用csvkit将json转换为csv时出错
EN

Stack Overflow用户
提问于 2016-03-10 15:04:56
回答 3查看 2K关注 0票数 0

嗨,我下载了一个csvkit到我的macbook,但是当我尝试使用以下命令转换json文件时,一切都顺利地遵循了教程在这里输入链接描述

代码语言:javascript
复制
in2csv customers-page-1.json > customers-page-1.csv

这是错误

代码语言:javascript
复制
When converting a JSON document with a top-level dictionary element, a key must be specified.

我不知道该放什么,也不知道该把钥匙放在哪里,因为这里有我的json文件。

代码语言:javascript
复制
{

"page":1,
"pages":132,
"count":5945,
"items":[
    {
        "id":74798241,
        "firstName":"Edyth",
        "lastName":"U.",
        "fullName":"Edyth U.",
        "photoUrl":null,
        "photoType":null,
        "gender":"unknown",
        "age":null,
        "organization":null,
        "jobTitle":null,
        "location":null,
        "createdAt":"2016-03-02T04:26:52Z",
        "modifiedAt":"2016-03-02T04:26:52Z"
    }]}
EN

回答 3

Stack Overflow用户

发布于 2016-03-10 15:07:46

您应该指定要在CSV行中生成列表对象的键。在这种情况下,items

代码语言:javascript
复制
in2csv -k items test.json

作为一般提示,如果您运行一个没有参数的命令,您将得到较短的使用率,而使用--help开关的时间会更长:

代码语言:javascript
复制
% in2csv
usage: in2csv [-h] [-d DELIMITER] [-t] [-q QUOTECHAR] [-u {0,1,2,3}] [-b]
              [-p ESCAPECHAR] [-z MAXFIELDSIZE] [-e ENCODING] [-S] [-H] [-v]
              [-l] [--zero] [-f FILETYPE] [-s SCHEMA] [-k KEY] [-y SNIFFLIMIT]
              [--sheet SHEET] [--no-inference]
              [FILE]
in2csv: error: You must specify a format when providing data via STDIN (pipe).

代码语言:javascript
复制
% in2csv --help
usage: in2csv [-h] [-d DELIMITER] [-t] [-q QUOTECHAR] [-u {0,1,2,3}] [-b]
              [-p ESCAPECHAR] [-z MAXFIELDSIZE] [-e ENCODING] [-S] [-H] [-v]
              [-l] [--zero] [-f FILETYPE] [-s SCHEMA] [-k KEY] [-y SNIFFLIMIT]
              [--sheet SHEET] [--no-inference]
              [FILE]

Convert common, but less awesome, tabular data formats to CSV.
....
  -k KEY, --key KEY     Specifies a top-level key to use look within for a
                        list of objects to be converted when processing JSON.
票数 2
EN

Stack Overflow用户

发布于 2016-03-10 15:25:14

按如下方式调用该程序:

代码语言:javascript
复制
$ in2csv --key items customers-page-1.json > customer.csv

生产:

代码语言:javascript
复制
$ cat customer.csv 
id,firstName,lastName,fullName,photoUrl,photoType,gender,age,organization,jobTitle,location,createdAt,modifiedAt
74798241,Edyth,U.,Edyth U.,,,unknown,,,,,2016-03-02T04:26:52Z,2016-03-02T04:26:52Z
票数 1
EN

Stack Overflow用户

发布于 2016-03-10 15:29:25

我得到了答案,这是密码

代码语言:javascript
复制
in2csv -k items customers-page-1.json > customers-page-1.csv

其中,items

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

https://stackoverflow.com/questions/35920156

复制
相关文章

相似问题

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