1 / 11

9 주 실습강의

9 주 실습강의. - Open API Introduction: Yahoo! Pipes - 2008 컴퓨터공학실험 ( I ). Before Open API. 특정 기능 혹은 컨텐츠를 보유하고 있는 웹 서비스를 사용자가 원하는 다른 형태로 접근하고자 할 때 , 해당 정보를 요청하여 받아올 수 있는 방법 서비스에 의존적인 출력결과를 분석 , Parsing 하여 원하는 정보만을 추출하는 방법을 알아야 함 이를 위해 요청 과정과 결과물을 사전에 분석하거나 편법을 사용해야 함 분석은 많은 시간과 노력을 필요로 함

Download Presentation

9 주 실습강의

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 9주 실습강의 - Open API Introduction: Yahoo! Pipes - 2008 컴퓨터공학실험( I )

  2. Before Open API • 특정 기능 혹은 컨텐츠를 보유하고 있는 웹 서비스를 사용자가 원하는 다른 형태로 접근하고자 할 때, • 해당 정보를 요청하여 받아올 수 있는 방법 • 서비스에 의존적인 출력결과를 분석,Parsing 하여 원하는 정보만을 추출하는 방법을 알아야 함 • 이를 위해 요청 과정과 결과물을 사전에 분석하거나 편법을 사용해야 함 • 분석은 많은 시간과 노력을 필요로 함 • 이러한 분석으로 데이터를 얻는다고 할 지라도, 최악의 경우 해당 서비스의 유지 보수를 위한 변경이 일어날 시 분석을 다시 해야 함 • 일종의 Hack으로 인한 법적인 문제를 피해가기 힘들다 • 사용자는 자신이 원하는 의도로 서비스를 사용하기 위해 많은 장애물을 넘어야 함

  3. Open API • API – Application Programming Interface • 운영체제 – 응용 프로그램 간 통신에 사용되는 언어 / 메시지 • 블랙박스 : 내부 구조를 알 수는 없지만 인터페이스에 맞추어 값을 전달하면 결과를 반환 • 개방형 프로토콜을 사용하여 웹 사이트와 상호작용을 가능하게 하는 기술의 집합 • 원격지에 존재하는 특정 서비스로 접근하기 위한 규약을 외부에 공개하는 것 • Social Media, Web 2.0에 대한 트렌드가 형성되면서 웹 사이트가 사용자 친화적인 방법으로 상호작용 할 수 있는 솔루션의 의미로 사용

  4. 국내의 Open API 제공 서비스 • 검색 분야는 Naver, Daum에서 제공 • 네이버 Open API : http://openapi.naver.com • 다음 Open API : http://dna.daum.net/apis • Social Network Service 분야에서도 Open API를 제공 • Micro Blogging / SNS, 미투데이 : http://me2day.net(API 사용설명서 : http://codian.springnote.com/pages/89009) • 도서 / 음반 판매 서비스 및 리뷰 사이트 • 알라딘 TTB : http://blog.aladdin.co.kr/ttb/1631066 • 레뷰(revu) : http://www.revu.co.kr/OpenAPI • 지도 • 네이버, 야후! 지도 API 사용, 국내 지도 사용 가능

  5. Mashup (Webapplication hybrid) • 일반적인 응용 프로그램 • 해당 운영체제 / 라이브러리의 API를 사용하여 프로그래밍 • Mashup • Open API를 사용하여 만든 새로운 서비스 또는 이러한 서비스를 개발하는 형태를 총칭 • 대표적인 예로는 Google Maps를 사용한 HousingMaps(http://www.housingmaps.com)가 GoogleOpen API의 폭발적인 사용을 일으킨 점을 들 수 있음 • Open API 제공 업체가 받는 주목 효과가 작용

  6. Open API 접근 • Open API의 호출은 대부분 HTTPGET을 사용 • 인자(Arguments)의 전달은 예약어(?, &) 와 인자 명, 값을 사용 • HTTP POST를 통해 인자를 전달하는 경우도 있음 • 예) http://search.naver.com/search.naver?where=nexearch&query=Open+API(→ where에 nexerch 값을, query에 Open API 라고 전달) • 컨텐츠 제공자는 무분별한 API 호출을 막기 위한 여러가지 수단을 사용 • API key: Open API를 사용하는 개발자/사용자에게 부여하는 Unique한 키 값으로, 이를 통해 사업자는 사용자 확인 및 제한, 응용 프로그램 확인 등을 할 수 있음 • 필요에 따라 사용자 key, Application key 등을 추가로 발급받아서 접근하기도 함 • 호출시에 이러한 Key를 인자로 전달하지 않으면 요청을 거부

  7. Yahoo! Pipes (1) • Mashup editor의 일종 • Google Mashup Editor, Microsoft Popfly, IBM Assemble Zero • 코드를 직접 작성하지 않고 Mashup을 개발 할 수 있도록 도와주는 플랫폼

  8. Yahoo! Pipes (2) • The Library : 사용할 수 있는 모듈들의 집합소

  9. Yahoo! Pipes (3) • Library의 모듈을 Drag-and-Drop으로 배치 • 각각의 모듈은 입력 및 출력을 가짐 • User Inputs 의 경우는 입력 포인트가 없음 • 각각의 모듈은 입 / 출력을 연결하여 연동 • 만들어진 Pipe는 저장하여 언제든지 사용할 수 있음

  10. Yahoo! Pipes (4) • 예제: 간단한 RSS Feed Reader • User Inputs → URL Input 선택, Sources → Fetch feed 선택 • Operators → Sort 사용하여 내림 차순 정렬 • Sort 결과를 Pipe Output으로 연결, 상단의 Run Pipes로 실행가능

  11. 이 주의 실험 • Google 뉴스 한국 검색 Pipe 작성 • 사용자의 입력을 받아 검색된 뉴스를 표시하는 pipe 작성 • 제목 중복 기사 제거, 날짜에 대해 내림차순 정렬

More Related