위 포스팅은 xml 내용을 가져와서 보니 <item> 태그 형식으로 되어있지 않아서 xmltodict 라이브러리를 이용했다.
이번 포스팅은 <item>안에 값을 가지는 경우.
API 활용신청부터 인증키 발급까지는 이전 포스팅과 동일하다.
사용한 데이터는 <한국산업인력공단_해외진출 뉴스 정보>
import requests
url = 'http://apis.data.go.kr/B490007/worldjob6/openApi6'
params = {'serviceKey' : '발급받은 인증키' }
response = requests.get(url, params=params).text
print(response)
#bs4 사용하여 item 태그 분리
import bs4
from lxml import html
xmlobj = bs4.BeautifulSoup(response, 'lxml-xml')
rows = xmlobj.findAll('ITEM')
print(rows)
import pandas as pd
row_list = [] # 행값
name_list = [] # 컬럼 이름
value_list = [] # 데이터
for i in range(0, len(rows)):
columns = rows[i].find_all()
for j in range(0, len(columns)):
if i == 0:
name_list.append(columns[j].name) # 컬럼 이름 저장
value_list.append(columns[j].text) # 컬럼의 데이터 값 저장
row_list.append(value_list) # 각 행의 value 값 저장
value_list = [] # 초기화
result = pd.DataFrame(row_list, columns=name_list)
print(result)
'노트1 > Python' 카테고리의 다른 글
머신러닝 회귀 모델(Regression Model)의 평가 지표 : MAE, MSE, RMSE, RMSLE (0) | 2022.01.20 |
---|---|
[Python] 서버에 HTTP 요청을 보내고(urllib/requests) Response에 접근하기(content/text) (0) | 2022.01.20 |
[Python] matplotlib 정리 (0) | 2022.01.10 |
[Python] 네이버 OPEN API 사용법 (네이버 블로그 크롤링, iframe, Selenium) (0) | 2021.12.14 |
[Python] 공공데이터 포털의 OPEN API 사용법 (xml > 데이터프레임 변환, xmltodict) (0) | 2021.12.10 |