SlideShare a Scribd company logo
1 of 11
2022
REST API와 크롤링
오정민
목차
00
1. API
2. 웹API와
3. SOAP와 REST API
4. API Crawlling
API
01
약어 단어 의미
A Application 작업을 하는 소프트웨어
P Programming 애플리케이션에서 작업을 하도록 하는 프로그램
I Interface 프로그램이 작동하게 끔 전달하는 부분
API란?
Ex) -Application 멜론(음악재생 어플리케이션)
-Programming 멜론은 음악을 틀기 위해서 음악 재생 프로그램을 사용한다
멜론은 음악을 찾기 위해서 검색 프로그램을 사용한다
-Interface 멜론에서 누를 수 있는 음악재생 버튼
멜론에서 사용할 수 있는 검색창
웹 API와 HTTP
02
API의 작동방식
컴퓨터
휴대폰 프로그램
요청(Request)
응답(Response)
-모든 웹 서비스는 API
-모든 API가 웹 서비스는 아니다
웹 서비스는 HTTP로 요청과 응답을 받는다
HTTP: HyperText Transfer Protocol
웹 API와 HTTP
02
HTTP REQUEST RESPONSE
Start line HTTP Method, Request Target,
HTTP Version
HTTP version, status code, status text
Headers 추가적인 정보, key: value형식
https://developer.mozilla.org/ko/docs/Web/HTTP/Headers
요청과 동일하지만 응답에만 사용되는 값
존재
body 실제 메시지, 내용, 모든 Body가
값을 가지고 있지는 않다
요청과 동일
GET /search HTTP/1.1
Start line
Accept: */*
Accept-Encoding: gzip, deflate
Connection: keep-alive
Content-Type: application/json
Content-Length: 257
Host: google.com
User-Agent: HTTPie/0.9.3
Headers
Body
{
"imp_uid": "imp_1234567890",
"merchant_uid": "order_id_8237352",
"status": "paid"
}
SOAP와 REST API
03
SOAP
- Simple Object Access Protocol
- 어떤 심플한 규칙에 따라서 객체에 접근하는 방법
- 규칙은 HTTP 요청/응답에 따른다
- WSDL(Web Services Description Language)를 사용
Start Line: POST WSDL HTTP version
Header Line: Content-Type: text/xml
Body: WSDL을 사용해서 형성된 XML
SOAP와 REST API
03
SOAP와 REST의 비교
REST는 SOAP에 비해서 단순하고 쉽다
REST가 SOAP와 차별화되는 혁신적인 차이?
HTTP StartLine의 HTTP Method의 적극적인 활용
대표적인 HTTP Method
GET - READ
POST - CREATE
PUT - UPDATE
DELETE - DELETE
SOAP는 WSDL을 따를 뿐이지만 REST는 프로그램이 무엇을 할 지 결정할 수 있다
03 SOAP와 REST API
REST
- Representational State Transfer
- 웹의 장점을 최대한 활용할 수 있는 아키텍처 스타일
- 리소스에 HTTP URI를 부여하며 HTTP Method를 통해 CRUD 작업을 수행
- 로이 필딩이 정의
구글검색:
우크라이나
구글서버
GET
/search
?q=우크라이나
실제 리소스가 아니라
기록 상태(state)의
표현(representation)
이 반환
REST API Crawlling
04
크롤링(Crawlling)이란?
- Web상에 존재하는 데이터를 자동화하여 가져오는 행위
REST API는 리소스에 URI를 부여하여 간단하게 접근할 수 있는 만큼 이를 활용하면 크롤
링을 쉽게 할 수 있다
크롤러
REST
API
GET / 규칙적인 URI 변조 및
반복 요청
반환데이터 수집
DB/CSV/JSON
REST API Crawlling
04
한국산업은행 예금상품 정보 크롤링 실습
링크
감사합니다

More Related Content

Similar to 220302 사내세미나_오정민 REST API와 크롤링

Ksug 세미나 (윤성준) (20121208)
Ksug 세미나 (윤성준) (20121208)Ksug 세미나 (윤성준) (20121208)
Ksug 세미나 (윤성준) (20121208)
Sungjoon Yoon
 
Swc발표자료2 2(restful)
Swc발표자료2 2(restful)Swc발표자료2 2(restful)
Swc발표자료2 2(restful)
마경근 마
 
Open API - 웹 플랫폼 생태계를 만드는 기술 (2011)
Open API - 웹 플랫폼 생태계를 만드는 기술 (2011)Open API - 웹 플랫폼 생태계를 만드는 기술 (2011)
Open API - 웹 플랫폼 생태계를 만드는 기술 (2011)
Channy Yun
 

Similar to 220302 사내세미나_오정민 REST API와 크롤링 (20)

Ksug 세미나 (윤성준) (20121208)
Ksug 세미나 (윤성준) (20121208)Ksug 세미나 (윤성준) (20121208)
Ksug 세미나 (윤성준) (20121208)
 
RESTful Mashup
RESTful MashupRESTful Mashup
RESTful Mashup
 
Html5 kig 120315_res_tful_api
Html5 kig 120315_res_tful_apiHtml5 kig 120315_res_tful_api
Html5 kig 120315_res_tful_api
 
REST Concept
REST ConceptREST Concept
REST Concept
 
RESTful pattern policy
RESTful pattern policyRESTful pattern policy
RESTful pattern policy
 
제 4회 DGMIT R&D 컨퍼런스 : REST API - 리소스 지향적 아키텍처
제 4회 DGMIT R&D 컨퍼런스 : REST API - 리소스 지향적 아키텍처제 4회 DGMIT R&D 컨퍼런스 : REST API - 리소스 지향적 아키텍처
제 4회 DGMIT R&D 컨퍼런스 : REST API - 리소스 지향적 아키텍처
 
Http2(http2.0,g rpc,cookie,session,idempotent, x forwarded-for)
Http2(http2.0,g rpc,cookie,session,idempotent, x forwarded-for)Http2(http2.0,g rpc,cookie,session,idempotent, x forwarded-for)
Http2(http2.0,g rpc,cookie,session,idempotent, x forwarded-for)
 
open api seminar
open api seminaropen api seminar
open api seminar
 
REST Ovewview
REST OvewviewREST Ovewview
REST Ovewview
 
Swc발표자료2 2(restful)
Swc발표자료2 2(restful)Swc발표자료2 2(restful)
Swc발표자료2 2(restful)
 
Restfull api
Restfull apiRestfull api
Restfull api
 
ASP.NET Web API를 이용한 오픈 API 개발
ASP.NET Web API를 이용한 오픈 API 개발ASP.NET Web API를 이용한 오픈 API 개발
ASP.NET Web API를 이용한 오픈 API 개발
 
Open API - 웹 플랫폼 생태계를 만드는 기술 (2011)
Open API - 웹 플랫폼 생태계를 만드는 기술 (2011)Open API - 웹 플랫폼 생태계를 만드는 기술 (2011)
Open API - 웹 플랫폼 생태계를 만드는 기술 (2011)
 
ASP.NET Web API를 활용한 RESTful 서비스 개발
ASP.NET Web API를 활용한 RESTful 서비스 개발ASP.NET Web API를 활용한 RESTful 서비스 개발
ASP.NET Web API를 활용한 RESTful 서비스 개발
 
RESTful API
RESTful APIRESTful API
RESTful API
 
REST에 대해 알아봅시다.pdf
REST에 대해 알아봅시다.pdfREST에 대해 알아봅시다.pdf
REST에 대해 알아봅시다.pdf
 
API Gateway 그리고 모바일 어플리케이션
API Gateway 그리고 모바일 어플리케이션API Gateway 그리고 모바일 어플리케이션
API Gateway 그리고 모바일 어플리케이션
 
Open API 발표자료 - 김연수
Open API 발표자료 - 김연수Open API 발표자료 - 김연수
Open API 발표자료 - 김연수
 
[H3 2012] Open API 와 Ruby on Rails 에 대한 이야기
[H3 2012] Open API 와 Ruby on Rails 에 대한 이야기[H3 2012] Open API 와 Ruby on Rails 에 대한 이야기
[H3 2012] Open API 와 Ruby on Rails 에 대한 이야기
 
Chap8 - HTTP 완벽가이드 8장
Chap8 - HTTP 완벽가이드 8장Chap8 - HTTP 완벽가이드 8장
Chap8 - HTTP 완벽가이드 8장
 

More from DataUs

More from DataUs (18)

0222 사내세미나_오정민 스프링인액션
0222 사내세미나_오정민 스프링인액션0222 사내세미나_오정민 스프링인액션
0222 사내세미나_오정민 스프링인액션
 
0222 사내세미나 이연권_추천시스템
0222 사내세미나 이연권_추천시스템0222 사내세미나 이연권_추천시스템
0222 사내세미나 이연권_추천시스템
 
모듈시스템과 webpack
모듈시스템과 webpack모듈시스템과 webpack
모듈시스템과 webpack
 
Chrome Devtools
Chrome DevtoolsChrome Devtools
Chrome Devtools
 
Spring Security
Spring SecuritySpring Security
Spring Security
 
프론트엔드 개발 첫걸음
프론트엔드 개발 첫걸음프론트엔드 개발 첫걸음
프론트엔드 개발 첫걸음
 
데이터 모델링
데이터 모델링데이터 모델링
데이터 모델링
 
Vue guide v0.1
Vue guide v0.1Vue guide v0.1
Vue guide v0.1
 
Vue guide예제(vue todo-list)-v0.1
Vue guide예제(vue todo-list)-v0.1Vue guide예제(vue todo-list)-v0.1
Vue guide예제(vue todo-list)-v0.1
 
GitHub 활용하기
GitHub 활용하기GitHub 활용하기
GitHub 활용하기
 
해커 그들은 누구인가?
해커 그들은 누구인가?해커 그들은 누구인가?
해커 그들은 누구인가?
 
모던 자바스크립트 Deep Dive Review
모던 자바스크립트 Deep Dive Review모던 자바스크립트 Deep Dive Review
모던 자바스크립트 Deep Dive Review
 
데이터 모델이론 개념모델링
데이터 모델이론 개념모델링데이터 모델이론 개념모델링
데이터 모델이론 개념모델링
 
[DataUs]클라우드 입문자를 위한 보안 가이드
[DataUs]클라우드 입문자를 위한 보안 가이드[DataUs]클라우드 입문자를 위한 보안 가이드
[DataUs]클라우드 입문자를 위한 보안 가이드
 
NHN Cloud 1차 교육자료
NHN Cloud 1차 교육자료NHN Cloud 1차 교육자료
NHN Cloud 1차 교육자료
 
html / css
html / csshtml / css
html / css
 
네트워킹과 웹 성능 최적화
네트워킹과 웹 성능 최적화네트워킹과 웹 성능 최적화
네트워킹과 웹 성능 최적화
 
Systemd
SystemdSystemd
Systemd
 

220302 사내세미나_오정민 REST API와 크롤링

  • 2. 목차 00 1. API 2. 웹API와 3. SOAP와 REST API 4. API Crawlling
  • 3. API 01 약어 단어 의미 A Application 작업을 하는 소프트웨어 P Programming 애플리케이션에서 작업을 하도록 하는 프로그램 I Interface 프로그램이 작동하게 끔 전달하는 부분 API란? Ex) -Application 멜론(음악재생 어플리케이션) -Programming 멜론은 음악을 틀기 위해서 음악 재생 프로그램을 사용한다 멜론은 음악을 찾기 위해서 검색 프로그램을 사용한다 -Interface 멜론에서 누를 수 있는 음악재생 버튼 멜론에서 사용할 수 있는 검색창
  • 4. 웹 API와 HTTP 02 API의 작동방식 컴퓨터 휴대폰 프로그램 요청(Request) 응답(Response) -모든 웹 서비스는 API -모든 API가 웹 서비스는 아니다 웹 서비스는 HTTP로 요청과 응답을 받는다 HTTP: HyperText Transfer Protocol
  • 5. 웹 API와 HTTP 02 HTTP REQUEST RESPONSE Start line HTTP Method, Request Target, HTTP Version HTTP version, status code, status text Headers 추가적인 정보, key: value형식 https://developer.mozilla.org/ko/docs/Web/HTTP/Headers 요청과 동일하지만 응답에만 사용되는 값 존재 body 실제 메시지, 내용, 모든 Body가 값을 가지고 있지는 않다 요청과 동일 GET /search HTTP/1.1 Start line Accept: */* Accept-Encoding: gzip, deflate Connection: keep-alive Content-Type: application/json Content-Length: 257 Host: google.com User-Agent: HTTPie/0.9.3 Headers Body { "imp_uid": "imp_1234567890", "merchant_uid": "order_id_8237352", "status": "paid" }
  • 6. SOAP와 REST API 03 SOAP - Simple Object Access Protocol - 어떤 심플한 규칙에 따라서 객체에 접근하는 방법 - 규칙은 HTTP 요청/응답에 따른다 - WSDL(Web Services Description Language)를 사용 Start Line: POST WSDL HTTP version Header Line: Content-Type: text/xml Body: WSDL을 사용해서 형성된 XML
  • 7. SOAP와 REST API 03 SOAP와 REST의 비교 REST는 SOAP에 비해서 단순하고 쉽다 REST가 SOAP와 차별화되는 혁신적인 차이? HTTP StartLine의 HTTP Method의 적극적인 활용 대표적인 HTTP Method GET - READ POST - CREATE PUT - UPDATE DELETE - DELETE SOAP는 WSDL을 따를 뿐이지만 REST는 프로그램이 무엇을 할 지 결정할 수 있다
  • 8. 03 SOAP와 REST API REST - Representational State Transfer - 웹의 장점을 최대한 활용할 수 있는 아키텍처 스타일 - 리소스에 HTTP URI를 부여하며 HTTP Method를 통해 CRUD 작업을 수행 - 로이 필딩이 정의 구글검색: 우크라이나 구글서버 GET /search ?q=우크라이나 실제 리소스가 아니라 기록 상태(state)의 표현(representation) 이 반환
  • 9. REST API Crawlling 04 크롤링(Crawlling)이란? - Web상에 존재하는 데이터를 자동화하여 가져오는 행위 REST API는 리소스에 URI를 부여하여 간단하게 접근할 수 있는 만큼 이를 활용하면 크롤 링을 쉽게 할 수 있다 크롤러 REST API GET / 규칙적인 URI 변조 및 반복 요청 반환데이터 수집 DB/CSV/JSON
  • 10. REST API Crawlling 04 한국산업은행 예금상품 정보 크롤링 실습 링크