상세 컨텐츠

본문 제목

데이터 분석 공부 #2

데이터 분석

by jii 2023. 7. 6. 22:49

본문

<API>

 

-API

접근 권한 제한 등의 이유로 db에 접근이 어려울 시 인증된 url만 있으면 데이터에 접근할 수 있는 방식

프로그램 간 데이터 전송 규칙 규정

 

-HTTP

웹페이지 전송 통신 규약

 

        웹데이터 요청(HTTP)

            <-------------------

웹 서버                          웹브라우저

           -------------------->

           웹데이터 전송(HTML)

 

-웹기반 API(HTTP 프로토콜을 사용하는 API)

 

       웹데이터 요청(HTTP)

            <-------------------

웹 서버                          웹브라우저

           -------------------->

      웹데이터 전송(CSV,JASON,XML)

 

-JSON 데이터

 

키:값

json_loads(): json 문자열을 파이썬 객체로 변환

 

여러개의 데이터를 json 배열로
json 문자열을 데이터 프레임으로

-XML 데이터

 

부모/자식

시작/종료 태그

element

xml 문자열을 a변수에 저장

fromstring() 함수 사용해 a 문자열을 xml(book)로 변환

book 객체를 리스트로 변환하여 자식 엘리먼트 구함

book_child 리스트의 각 항목을 name,author,year 변수에 할당하여 text 속성으로 엘리먼트에 있는 텍스트 출력

findtext() 사용하여 출력 가능

book 엘리먼트가 여러개일 때->배열과 같은 구조가 없기 때문에 부모 엘리먼트 사용

부모 엘리먼트 확인

findall() 과 for문 사용해 여러개의 자식 엘리먼트 확인 

 

-API를 호출하는 url

공개 api를 사용하기 위해 호출 url이 필요.

호출 url=> http://data4library. kr/api/loanItemSrch?format=json&startDt=2021-04-01&endDt=2021-04-30&age=20&authKey=[발급받은 키]

 

 

-파이썬으로 api 호출:requests 패키지 사용

import requests

url="http://data4library. kr/api/loanItemSrch?format=json&startDt=2021-04-01&endDt=2021-04-30&age=20&authKey=[발급받은 키]"

r=requests.get(url)

 

*json 문자열을 파이썬 객체로 변환하여 반환

data=r.json()

print(data)

 

*data 딕셔너리의 구조 변경->books 딕셔너리로 

books=[]

for d in data['response']['docs']:

        books.append(d['doc'])

 

*데이터 프레임에 리스트 저장하기

book_df=pd.DataFrame(books)

books_df

 

*json으로 변환하여 저장하기

books_df.to_json('20sbook.json') 

 

'데이터 분석' 카테고리의 다른 글

데이터 분석 공부 #4  (0) 2023.07.10
데이터 분석 공부 #3  (0) 2023.07.09
데이터 분석 공부 #1  (0) 2023.07.05
KBO MVP 예측 프로젝트  (0) 2022.12.29
야구 스탯(BASEBALL STATS)  (0) 2022.11.09

관련글 더보기

댓글 영역