JSON 파일 내용에 escape 문자가 여러번 생기는 문제
에러 메세지

문제 상황
python을 이용해 json 파일을 만들었는데.. 이스케이프문자 범벅으로 만들어졌다.
또한 쌍따옴표도 의도치 않은 곳에 들어가있어, 정상적인 json 파일로 읽히지도 않는다.
무슨 문제일까?
원인
파이썬에서 json dump 를 두 번을 했다.
(1) 첫 번째는 dictionary 형태의 result를 json 형태로 바꾸는 때
(2) 두 번째는 result를 json 파일로 저장하는 때
json 형태로 변환된 내용을 다시 한 번 dump 하니, 비정상적인 파일이 만들어진 것.
1
2
3
4
5
6
# result를 json 형태로 변환
result = json.dumps(result)
# result json 파일 저장
with open(basic_path + "/result.json", "w", encoding="utf-8") as file:
json.dump(result, file)
해결
result는 한 번만 dump 하도록 코드를 변경했다.
1
2
3
4
5
6
# result를 json 형태로 변환
# result = json.dumps(result) ==> 제거
# result json 파일 저장
with open(basic_path + "/result.json", "w", encoding="utf-8") as file:
json.dump(result, file)
정상적인 json 파일로 만들어졌다.


Reference
stack overflow : https://stackoverflow.com/questions/25242262/dump-to-json-adds-additional-double-quotes-and-escaping-of-quotes
댓글 남기기