如何合并2个JSON文件?

时间:2016-04-07 22:44:25

标签: python json postgresql

有两种不同的JSON文件。

[{"volume": "44", 
"affiliations": {}, 
"cite_count": 39, 
"issue": "12", 
"page_range": "1257-1271", 
"doi": "10.1016/0584-8547(89)80124-7", 
"title_en": "test"}
]

[{"sourceType": "Conference Proceeding", 
"page_range": "1257-1271",
"language": null, 
"volume": null, 
"titleEn": "test2", 
"spinCiteCount": null}
]

如您所见,他们有相同的信息,但形式不同。某些信息不在其他文件中。 我需要将它们全部转换为一个postgreSQL表(或JSON文件并解析它)。

那么,我应该怎样做才能将不同格式的JSON文件合并到一个文件或一个postgres表中?

1 个答案:

答案 0 :(得分:2)

你可以将两者合并为一个字典/ json:

import json

dic1 = json.load('json_file_1')
dic2 = json.load('json_file_2')
dic1.update(dic2)

print dic1

输出:

{
  "volume": "44", 
  "affiliations": {}, 
  "cite_count": 39, 
  "issue": "12", 
  "page_range": "1257-1271", 
  "doi": "10.1016/0584-8547(89)80124-7", 
  "title_en": "test2"
  "sourceType": "Conference Proceeding", 
  "language": None, 
  "volume": None, 
  "spinCiteCount": None
}
  

注意:公共密钥将被第二个值覆盖   文件。因此,根据您的需要,您阅读文件的顺序很重要,   改变顺序。