- Today
- Total
Recent Posts
Recent Comments
Archives
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 자료구조
- selenium
- c언어
- python 중간고사
- 채용문제
- 파이썬활용
- gdrive
- 크롤링
- 코딩시험
- 알고리즘
- 파이썬
- 기말시험
- 대학시험
- 프로그래밍
- 파이썬3
- 면접 파이썬
- Crawling
- 파이썬 강의
- 파이썬 입문
- python data structure
- 알고리즘 강좌
- 중간시험
- 자료구조 강의
- 쉬운 파이썬
- 파이썬 강좌
- 셀레니움
- 코딩문제
- 파이썬 자료구조
- 파이썬 알고리즘
- 알고리즘 강의
Notice
반원 블로그
4. rest api (1) - 급식 데이터 조회 본문
개요
REST API 서비스를 이용하여 다양한 데이터와 서비스를 이용해본다.
설치 패키지
- pip3 install requests
사용할 패키지와 모듈
- reqeusts
- json
- pprint
배경지식
HTTP 메소드
- GET, POST, PATCH, PUT, DELETE 등이 있으며 주로 GET, POST가 쓰임
- GET은 보안이 다소 요구되지않는 단순 조회에 쓰이는 방식이다. 서버에 요청할 때 딱히 보안 처리가 안된 스트링(String)으로 전송한다. 구글 검색등에 쓰이며 요청 정보가 url에 노출된다.
- GET 요청 URL 예시 : https://search.naver.com/search.naver?ie=UTF-8&query=아이스크림&sm=chr_hty
- POST방식은 서버에 요청할 때 인코딩 처리가 된다. 글 작성 완료, 회원정보수정 등의 기능에서 쓰인다.
- 참고1
HTTP 상태 코드
- 2xx는 성공, 4xx는 클라이언트 오류, 5xx는 서버 오류라고 보면 대부분 맞다.
- 참고1
JSON
- JavaScript Object Notation
- 객체를 스트링(Stirng)형태로 나타내기 위한 표현식(표기법)
- 주로 웹 요청시 자바스크립트에서 쓰이던 표기법이나, 현재는 다른 언어에서도 많이 사용중이다.
- {"key1":"value1","key2":"value2"} 형태를 갖고 있으며, 파이썬에서는 dict형과 유사하다.
- json은 엄연히 문자(String)임을 명심하자.
- 참고1 참고2
급식데이터 API
Get Start : 문서 보기
HOST : https://schoolmenukr.ml
PATH : /api/[학교유형]/[학교코드]
학교유형 : elementary / middle / high
학교코드
- 조회1 조회2
- 사이트 공사 중으로 막힐 경우 링크 참고 참고
매개변수 - year : 연도, int
- month : 월, int
- date : 일, int
- hide : 알레르기정보, boolean
요청 예시 : https://schoolmenukr.ml/api/[학교유형]/[학교코드]?[변수명1]=[값1]&[변수명2]=[값2]
응답 데이터 : application/json
확장사항
- 학교코드 조회 API를 이용하면 확장할 수 있다. 링크
- tkinter, wxpython, pyQt5 를 이용하여 GUI프로그램으로 만든다.
'2018~ > Python Skill Up' 카테고리의 다른 글
8. pillow : 이미지 패키지(1) - info, crop, thumbnail, resize (0) | 2019.09.06 |
---|---|
7. pyisntaller - 파이썬 파일을 실행파일로 변환(py to exe) (0) | 2019.09.06 |
6. requests 모듈 - REST API 사용법, curl을 python requests로 변환방법 (0) | 2019.09.06 |
5. 클래스 - 기초 정의 및 인스턴스 생성 (0) | 2019.09.06 |
파이썬 가상환경 개요 설명 (0) | 2019.09.06 |
3. selenium : 웹 드라이버 제어를 통한 자동화 (0) | 2019.09.05 |
2. pyautogui : 키보드 마우스 제어 패키지 (0) | 2019.09.05 |
1. 라이브러리, 패키지, 모듈, 외장 함수, 내장함수 (0) | 2019.09.05 |
Comments