[Python.JSON] Python으로 JSON 데이터 읽기 - 실전편
2020. 11. 25. 05:00ㆍPython과 머신러닝/웹 데이터 추출
이전 포스트
- 2020/11/13 - [Python과 머신러닝/웹 데이터 추출] - [Python.Web] 정규표현식을 이용한 웹 데이터 파싱 - urllib, regular expression
- 2020/11/17 - [Python과 머신러닝/웹 데이터 추출] - [Python.Web] wget으로 웹 데이터 다운로드 및 파싱 - wget.download
- 2020/11/18 - [Python과 머신러닝/웹 데이터 추출] - [Python.Web] 실시간 금융 데이터 파싱하기 추출
- 2020/11/20 - [Python과 머신러닝/웹 데이터 추출] - [Python.Web] BeautifulSoup으로 하는 웹크롤링, 데이터 스크레이핑
- 2020/11/23 - [Python과 머신러닝/웹 데이터 추출] - [Python.Web] BeautifulSoup과 wget 으로 웹크롤링, 데이터 스크레이핑
- 2020/11/24 - [Python과 머신러닝/웹 데이터 추출] - [Python.JSON] Python으로 JSON 데이터 파싱 - 이론편
요약
- 지난번에는 JSON이 왜 중요하고, Python으로 JSON을 추출하는 것의 특징을 이해했다.
- 이번에는 예제를 통해 얼마나 JSON을 통한 데이터 추출이 용이한지 보려고 한다.
- 정답부터 보고 시작하자.
import json
with open("json_example.json", "r", encoding="utf8") as f:
contents = f.read() # string 타입
json_data = json.loads(contents)
print(json_data) # 전체 JSON을 dict type으로 가져옴
print(json_data["employees"]) # Employee 정보를 조회
print(json_data["employees"][0]["firstName"]) # 첫 Employee의 이름을 출력 -> John
1. JSON을 Import 하고 JSON.loads로 읽어오기
- Python의 JSON Module을 import 한 뒤 일반 read를 통해 string으로 읽어온다.
- string type을 json data로 변환하기 위해 json.loads로 읽어오면, 우리가 원하는 json_data가 만들어진다
- json_data는 지난 시간에 배운 것처럼 Dict type으로 들어온다
import json
with open("json_example.json", "r", encoding="utf8") as f:
contents = f.read() # string 타입
json_data = json.loads(contents)
2. 읽어온 값을 하나씩 출력하기
- 우선 전체 JSON을 다 출력해서 Dict type의 형태를 확인한다
- 이 중 employees 정보만 추출해서 확인해본다.
- 마지막으로, employees를 index로 접근하여 firstName, lastName이 잘 접근되는지 본다.
- 아주 간단한 원리이지만, 이것만 안다면 JSON 정보에서 필요한 것을 추출하여 많은 데이터를 활용할 수 있다.
print(json_data) # 전체 JSON을 dict type으로 가져옴
print(json_data["employees"]) # Employee 정보를 조회
print(json_data["employees"][0]["firstName"]) # 첫 Employee의 이름을 출력 -> John
마무리
- JSON을 통해 수많은 데이터를 주고 받는 세상이 되었다.
- Python의 JSON 모듈의 json.loads를 통해 Dict로 받아서 필요한 정보를 추출한다면, 웹의 빅데이터를 대부분 접근 가능할 것이다.
- 2020/11/26 - [Python과 머신러닝/웹 데이터 추출] - [Python.JSON] Python으로 JSON 데이터 저장 및 전달 - 실전편
'Python과 머신러닝 > 웹 데이터 추출' 카테고리의 다른 글
[Python.ML] Python & Machine Learning Overview (0) | 2020.11.27 |
---|---|
[Python.JSON] Python으로 JSON 데이터 저장 및 전달 - 실전편 (0) | 2020.11.26 |
[Python.JSON] Python으로 JSON 데이터 파싱 - 이론편 (0) | 2020.11.24 |
[Python.Web] BeautifulSoup과 wget 으로 웹크롤링, 데이터 스크레이핑 (0) | 2020.11.23 |
[Python.Web] BeautifulSoup으로 하는 웹크롤링, 데이터 스크레이핑 (0) | 2020.11.20 |