如何将json类型数据转换为csv格式

时间:2019-03-26 06:32:32

标签: python format-conversion

关于如何将数据如下转换为python中的csv文件的任何建议:

[{
  'name': 'a',
  'url': 'url1'
}, 
{
  'name': 'b',
  'url': 'url2'
}, 
{
  'name': 'c',
  'url': 'url3'
}]

谢谢。

1 个答案:

答案 0 :(得分:1)

这不像我在第一句话中所说的那么简单。当我这么说的时候,我没有意识到您的输入字符串不是任何易于使用JSON库或解释为Python代码读取的标准格式。

这是一个非常严格的答案,仅适用于具有特定形式的输入字符串:

data = "[{name:a,url:url1},{name:b,url:url2},{name:c,url:url3}]"
entries = re.findall("{([^:]+):([^,]+),([^:]+):([^}]+)", data)
with open("/tmp/output.csv", "w") as f:
    f.write("Name,Url\n")
    for entry in entries:
        f.write(entry[1] + ',' + entry[3] + '\n')

结果文件内容:

Name,Url
a,url1
b,url2
c,url3