-
[API] 공공데이터 API 접속하기Computer Science 2023. 6. 2. 07:02728x90
기상청 단기예보 조회서비스를 이용하여 api를 호출해보자.
❖ 맥북(Mac) 화면 캡쳐 방법(단축키)
1. 전체화면 스크린샷: Command + Shift + 3
2. 영역지정 캡처: Command + Shift + 4
3. 특정 창 캡처: Command + Shift + 4 누른 후, SpaceBar
4. 스크린샷 앱 이용: Command + Shift + 5
5. 터치바 캡처: Command + Shift + 6
6. 미리보기 앱 이용: 미리보기앱 > 파일 > 스크린샷 ("전체화면" 사용시, 마우스, 드래그 영역 함께 캡쳐 가능)
* Only 복사(저장X) : Command + Shift + Control + 3/4/6
기상청 단기예보 조회서비스를 공공데이터 api를 이용해 JSON 형식으로 반환해보자.
이렇게 공공데이터 포탈(www.data.go.kr)을 이용해 api에 접근할 수 있다.
활용신청 상세기능정보에서 초단기실황조회를 클릭하고,
각 변수에 원하는 값을 집어넣는다.
ServiceKey : 서비스 정보에서 받은 일반 인증키
base_data : 발표 일자(최근 24시간 데이터만 제공)
base_time : 발표 시각(02, 05, 08, 11, 14, 17, 20, 23시에 발표)
nx : 예보지점 x좌표값(같이 제공되는 엑셀에서 확인 가능)
ny : 예보지점 y좌표값(같이 제공되는 엑셀에서 확인 가능)
numOfRows : 한 페이지 결과 수(높으면 많은 값이 한번에 온다)
pageNo : 페이지 번호
_type : 반환되는 형식.
기본은 xml이나, json이 조금 더 편해서 json으로 받는다.
호출하면 이런 식으로 데이터가 XML 형태로 주어진다.
호출형태를 JSON으로 지정하면 다음과 같은 결과가 주어진다.
번외_사업자번호 등록 API 호출하기
import requests headers = { 'accept': 'application/json', 'Authorization': 's+v4VsJPXW/BBbZSDIEz4+91lr3Zn6vs8nzbQgwBeoZKBzR3xxNx+6S0KvgasNlNlOggXYUZIyOtPbNbIlHIdw==', 'Content-Type': 'application/json', } params = { 'serviceKey': 's+v4VsJPXW/BBbZSDIEz4+91lr3Zn6vs8nzbQgwBeoZKBzR3xxNx+6S0KvgasNlNlOggXYUZIyOtPbNbIlHIdw==', } json_data = { 'b_no': [ '0000000000', ], } response = requests.post('https://api.odcloud.kr/api/nts-businessman/v1/status', params=params, headers=headers, json=json_data) import pprint pprint.pprint(response.json()) # 출력결과 확인
❯ /usr/local/bin/python3 /Users/imhyeog/Desktop/workspace/worker_api.py {'data': [{'b_no': '0000000000', # 사업자번호 입력 'b_stt': '', 'b_stt_cd': '', 'end_dt': '', 'invoice_apply_dt': '', 'rbf_tax_type': '', 'rbf_tax_type_cd': '', 'tax_type': '국세청에 등록되지 않은 사업자등록번호입니다.', 'tax_type_cd': '', 'tax_type_change_dt': '', 'utcc_yn': ''}], 'request_cnt': 1, 'status_code': 'OK'} ❯ /usr/local/bin/python3 /Users/imhyeog/Desktop/workspace/worker_api.py {'data': [{'b_no': '1272195603', 'b_stt': '계속사업자', 'b_stt_cd': '01', 'end_dt': '', 'invoice_apply_dt': '', 'rbf_tax_type': '해당없음', 'rbf_tax_type_cd': '99', 'tax_type': '부가가치세 일반과세자', 'tax_type_cd': '01', 'tax_type_change_dt': '', 'utcc_yn': 'N'}], 'match_cnt': 1, 'request_cnt': 1, 'status_code': 'OK'}
728x90'Computer Science' 카테고리의 다른 글
[OS] File System에서의 레코드와 필드 (0) 2023.06.22 [Back-End] 웹 크롤러 작업 흐름 (0) 2023.06.14 [DB]SQLD_2 (0) 2023.05.25 [DB] SQLD_1 (0) 2023.05.21 [OS] vi 편집기 (0) 2023.05.09