KR20140028789A - 모바일 디바이스에서의 웹 스크린 스크래핑 방법 및 웹 스크린 스크래핑을 제공하는 모바일 디바이스 - Google Patents

모바일 디바이스에서의 웹 스크린 스크래핑 방법 및 웹 스크린 스크래핑을 제공하는 모바일 디바이스 Download PDF

Info

Publication number
KR20140028789A
KR20140028789A KR1020120095868A KR20120095868A KR20140028789A KR 20140028789 A KR20140028789 A KR 20140028789A KR 1020120095868 A KR1020120095868 A KR 1020120095868A KR 20120095868 A KR20120095868 A KR 20120095868A KR 20140028789 A KR20140028789 A KR 20140028789A
Authority
KR
South Korea
Prior art keywords
web
script
scraping
mobile device
information
Prior art date
Application number
KR1020120095868A
Other languages
English (en)
Other versions
KR101402146B1 (ko
Inventor
김도현
정삼위
최호식
손규호
Original Assignee
주식회사 핑거
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 핑거 filed Critical 주식회사 핑거
Priority to KR1020120095868A priority Critical patent/KR101402146B1/ko
Publication of KR20140028789A publication Critical patent/KR20140028789A/ko
Application granted granted Critical
Publication of KR101402146B1 publication Critical patent/KR101402146B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Human Computer Interaction (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)

Abstract

본 발명은 모바일 디바이스에서의 웹 스크린 스크래핑 방법 및 웹 스크린 스크래핑을 제공하는 모바일 디바이스에 관한 것으로서, 그 웹 스크린 스크래핑 방법은 웹 서버에 접속하여 웹 페이지로부터 필요한 정보를 추출하여 가져오는 스크립트를 생성하는 단계; 모바일 디바이스에 탑재된 운영체제에서 동작하는 웹 브라우저가 그 생성된 스크립트를 실행하는 단계; 및 스크립트 실행 결과 추출된 정보를 모바일 디바이스의 사용자 인터페이스 화면에 디스플레이하는 단계를 포함한다.
본 발명에 의하면, 다양한 운영체제(OS)가 탑재될 수 있는 모바일 디바이스에서 각 운영체제에서 동작하는 웹 브라우저를 이용하여 스크래핑을 실행함으로써, 각 운영체제 별로 스크래핑 기능을 구현하지 않고도 하나의 소스로 원하는 정보를 동일하게 가져오는 스크래핑 기능을 편리하게 구현할 수 있다.

Description

모바일 디바이스에서의 웹 스크린 스크래핑 방법 및 웹 스크린 스크래핑을 제공하는 모바일 디바이스{Method for scraping web screen in mobile device and mobile device providing web screen scraping}
본 발명은 웹 사이트에 접속하여 원하는 정보를 추출하는 스크래핑에 관한 것으로서, 특히 다양한 모바일 디바이스 운영체제(Mobile Device OS)를 탑재한 모바일 디바이스가 금융, 이메일, 포탈 및 마켓 등의 웹사이트에 접속하여 원하는 정보를 추출해오는, 모바일 디바이스에서의 웹 스크린 스크래핑( Web Screen Scraping) 방법 및 웹 스크린 스크래핑을 제공하는 모바일 디바이스에 관한 것이다.
스크래핑이란 시스템에 자동으로 접속해 데이터를 화면에 나타낸 후 필요한 자료를 추출하여 가져오는 기술을 말한다. 웹사이트 혹은 프로그램의 정보를 끄집어 내 다른 프로그램이나 데이터 베이스에 저장하여 필요할 때마다 수시로 조회하거나 사용할 수 있으며 저장된 데이터를 비교분석 자료로 활용할 수도 있다.
웹 스크린 스크래핑(이하 스크래핑 이라 한다)을 이용한 컴퓨터(PC) 서비스는 CMS(Cash Management System), PFMS(Personal Finance Management System), 메일 통합 등 다양한 분야에서 서비스 되고 있다. 현대 사회에서는 일반 대중들이 일상생활에서 언제 어느 때나 스마트 폰(Smart Phone)을 소지하면서 사용하고 있다. 이러한 시대 환경과 흐름에 따라 각종 생활에 필요한 다양한 기능을 스마트 폰으로 대표되는 모바일 디바이스에 집적시키는 기술 경향이 주요 화두가 되고 있다.
스크래핑 기술을 스마트 디바이스(smart device)에서 구현할 경우 두 가지 문제점이 있을 수 있다. 첫 번째는 스마트 디바이스에는 다양한 운영체제(OS)가 존재할 수 있으며, 이러한 다양한 운영체제를 탑재하고 있는 스마트 디바이스가 웹 페이지를 스크래핑 하려면, 각 운영체제 별로 스크래핑 기능이 구현되어 있어야 한다.
두번째 문제점은 HTML/Script의 기술 고도화(HTML5, JSON, Jquery등)가 이루어져 네이티브(Native)코드로 구현하기가 까다롭다.
따라서 스크래핑하여 가져올 웹 사이트의 HTML과 스크립트(Script)를 분석하여 별도의 데이터 수집 스크립트(Script)를 구현하고, 모든 스마트 디바이스 운영체제에 탑재되어있는 웹 브라우저를 이용하여 스크래핑을 실행할 수 있으면 모바일 디바이스에서 스크래핑 기능을 구현하는데 훨씬 편리할 것이다.
본 발명이 해결하고자 하는 과제는 스크래핑 하려는 웹사이트의 HTML과 스크립트를 분석하여 원하는 정보를 수집하는 스크립트를 만들어 안드로이드 (Android), iOS, 윈도우(Windows), 블랙베리(Blackberry), 심비안 (Symbian), 웹OS, 바다(Bada) 등 스마트 디바이스에 탑재되는 다양한 운영체제에서 동작하는 웹 브라우저(WebBrowser)를 이용하여 하나의 소스로 원하는 정보를 동일하게 가져오는, 모바일 디바이스에서의 웹 스크린 스크래핑( Web Screen Scraping) 방법을 제공하는 것이다.
본 발명이 해결하고자 하는 다른 과제는 상기 웹 스크린 스크래핑이 가능한 모바일 디바이스를 제공하는 것이다.
상기 기술적 과제를 이루기 위한 본 발명에 의한 모바일 디바이스에서의 웹 스크린 스크래핑( Web Screen Scraping) 방법은, 웹 서버에 접속하여 웹 페이지로부터 필요한 정보를 추출하여 가져오는 스크립트를 생성하는 단계; 모바일 디바이스에 탑재된 운영체제에서 동작하는 웹 브라우저가 상기 생성된 스크립트를 실행하는 단계; 및 상기 스크립트 실행 결과 추출된 정보를 모바일 디바이스의 사용자 인터페이스 화면에 디스플레이하는 단계를 포함한다.
상기 스크립트 실행단계는 상기 스크립트에 상기 웹 브라우저가 처리할 수 없는 명령어가 있을 경우, 웹 플러그 인이 상기 명령어를 처리하는 단계를 더 포함하는 것이 바람직하다. 상기 스크립트 실행 결과 추출된 정보를 사용자 인터페이스 화면에 디스플레이하는 단계는 상기 모바일 디바이스의 웹브라우저가 상기 스크립트 실행 결과 추출된 정보를 웹 플러그 인에게 전달하는 단계; 및 상기 웹 플러그 인으로부터 상기 추출된 정보를 받아 사용자 인터페이스 화면에 디스플레이하는 단계를 포함하는 것을 특징으로 한다.
상기 기술적 과제를 이루기 위한 본 발명에 의한 모바일 디바이스에서의 웹 스크린 스크래핑( Web Screen Scraping) 방법은, 스크래핑 기술을 이용한 서비스에 필요한 스크래핑 서비스 정보와 입력 값을 받아들이는, 모바일 디바이스의 사용자 인터페이스 화면을 제공하는 단계; 상기 사용자 인터페이스 화면을 통해 사용자로부터 상기 스크래핑 서비스 정보와 입력 값이 입력되면, 웹 플러그 인에 상기 스크래핑 서비스 정보와 상기 입력 값을 전달하는 단계; 상기 웹 플러그 인에게 상기 스크래핑 서비스 정보와 입력 값이 전달되면, 상기 모바일 디바이스에 설치된 앱에 내장된 웹브라우저가 상기 스크래핑 서비스 정보에 상응하는 스크래핑 서비스를 위한 스크립트를 스크립트 저장부로부터 읽어오는 단계; 상기 웹브라우저가 상기 읽어온 스크립트를 실행하여 웹 페이지로부터 필요한 정보를 추출하여 가져오는 단계; 및 상기 추출된 정보를 사용자 인터페이스 화면에 디스플레이하는 단계를 포함한다.
상기 스크립트 실행단계는 상기 스크립트에 상기 웹 브라우저가 처리할 수 없는 명령어가 있을 경우, 웹 플러그 인이 상기 명령어를 처리하는 단계를 더 포함하는 것이 바람직하다. 상기 스크립트 실행 결과 추출된 정보를 사용자 인터페이스 화면에 디스플레이하는 단계는 상기 모바일 디바이스에 탑재된 웹브라우저가 상기 스크립트 실행 결과 추출된 정보를 웹 플러그 인에게 전달하는 단계; 및 상기 웹 플러그 인으로부터 상기 추출된 정보를 받아 사용자 인터페이스 화면에 디스플레이하는 단계를 포함하는 것을 특징으로 한다.
상기 다른 기술적 과제를 이루기 위한 본 발명에 의한 웹 스크린 스크래핑( Web Screen Scraping)을 제공하는 모바일 디바이스는, 스크래핑 기술을 이용한 서비스에 필요한 입력 값을 받아들이는 사용자 인터페이스 화면을 제공하는 사용자 인터페이스부; 상기 서비스를 제공하기 위한 스크립트를 실행하는 웹 브라우저; 및 상기 사용자 인터페이스 화면과 상기 웹 브라우저 간의 인터페이스를 제공하고, 상기 사용자 인터페이스 화면을 통해 사용자로부터 상기 입력 값이 입력되면, 상기 웹 브라우저에게 전달하는 웹 플러그인을 포함하고, 상기 웹브라우저는 상기 웹 플러그 인에게 상기 스크래핑 서비스 정보와 입력 값이 전달되면, 상기 스크래핑 서비스 정보에 상응하는 스크래핑 서비스를 위한 스크립트를 실행하여 웹 페이지로부터 필요한 정보를 추출하여 가져오고, 상기 추출된 정보는 상기 사용자 인터페이스 화면에 디스플레이되는 것을 특징으로 한다.
상기 본 발명에 의한 모바일 디바이스는 스크래핑 기술을 이용한 서비스를 제공하기 위해, 상기 스크래핑을 위한 명령들을 포함하는 적어도 하나의 스크립트를 저장하는 스크립트 저장부를 더 포함할 수 있다. 상기 웹 플러그 인은 상기 스크립트에 상기 웹 브라우저가 처리할 수 없는 명령어가 있을 경우, 상기 명령어를 처리하고, 상기 모바일 디바이스에 탑재된 웹브라우저로부터 상기 스크립트 실행 결과 추출된 정보를 수신하여 사용자 인터페이스 화면에 디스플레이되도록 상기 사용자 인터페이스부에 전달하는 것을 특징으로 한다. 상기 웹 브라우저, 상기 웹 플러그 인 및 상기 사용자 인터페이스부는 모바일 디바이스에 탑재된 운영체제에서 동작하는 앱에 포함되어 있는 것이 바람직하다.
스크래핑 기술을 이용한 서비스에 필요한 입력 값을 받아들이는, 모바일 디바이스의 사용자 인터페이스 화면을 제공하는 단계; 상기 사용자 인터페이스 화면을 통해 사용자로부터 상기 입력 값이 입력되면, 웹 플러그 인에 상기 입력 값을 전달하는 단계; 상기 웹 플러그 인에게 상기 입력 값이 전달되면, 상기 모바일 디바이스에 설치된 앱에 내장된 웹브라우저가 상기 입력값에 상응하는 스크래핑 서비스를 위한 스크립트를 스크립트 저장부로부터 읽어오는 단계; 상기 웹브라우저가 상기 읽어온 스크립트를 실행하여 웹 페이지로부터 필요한 정보를 추출하여 가져오는 단계; 및 상기 추출된 정보를 사용자 인터페이스 화면에 디스플레이하는 단계를 모바일 디바이스에서 실행하는 프로그램을 기록한 기록매체를 제공한다.
본 발명에 따른 모바일 디바이스에서의 웹 스크린 스크래핑( Web Screen Scraping) 방법과 이를 제공하는 모바일 디바이스에 의하면, 다양한 운영체제(OS)가 탑재될 수 있는 모바일 디바이스에서 각 운영체제에서 동작하는 웹 브라우저를 이용하여 스크래핑을 실행함으로써, 각 운영체제 별로 스크래핑 기능을 구현하지 않고도 하나의 소스로 원하는 정보를 동일하게 가져오는 스크래핑 기능을 편리하게 구현할 수 있다.
도 1은 본 발명에 의한 웹 스크린 스크래핑을 제공하는 모바일 디바이스가 적용되는 웹 스크린 스크래핑 시스템의 구성에 대한 일실시예를 블록도로 나타낸 것이다.
도 2는 본 발명에 의한 모바일 디바이스에서의 웹 스크린 스크래핑( Web Screen Scraping) 방법에 대한 일 실시예를 흐름도로 나타낸 것이다.
도 3은 본 발명에 의한 모바일 디바이스에서의 웹 스크린 스크래핑( Web Screen Scraping) 방법에 대한 보다 구체적인 실시예를 흐름도로 나타낸 것이다.
도 4는 본 발명이 적용되는 전체 시스템의 구성을 나타낸 것이다.
이하, 첨부된 도면을 참조로 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 바람직한 일 실시예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
도 1은 본 발명에 의한 웹 스크린 스크래핑을 제공하는 모바일 디바이스가 적용되는 웹 스크린 스크래핑 시스템의 구성에 대한 일실시예를 블록도로 나타낸 것이다.
본 발명에 의한 모바일 디바이스(100)는 모바일 디바이스(100)에 탑재된 운영체제(109)와 상기 운영체제(109)에서 동작하는 앱(107)을 포함하여 이루어지며, 스크립트 저장부(130)를 더 포함할 수도 있다. 상기 모바일 디바이스(100)에 탑재될 수 있는 운영체제(Operating System)의 예로는 안드로이드(Android), iOS, 윈도우 (Windows), 블랙베리(Blackberry), 심비안 (Symbian), 웹OS, 바다(Bada) 등이 있다.
앱(107)은 사용자 인터페이스부(101), 웹 브라우저(105) 및 웹 플러그 인(103)을 포함하여 이루어진다.
사용자 인터페이스부(101)는 스크래핑 기술을 이용한 서비스에 필요한 스크래핑 서비스 정보와 입력 값을 받아들이는 사용자 인터페이스 화면을 제공한다. 여기서 상기 스크래핑 서비스 정보는 이메일 정보 스크래핑 서비스, 금융정보 스크래핑 서비스, 뉴스 정보 스크래핑 서비스 등 사용자가 스크래핑을 통해 수집하고자 하는 스크래핑 서비스에 대한 정보가 될 수 있다.
웹 브라우저(105)는 상기 웹 스크래핑 서비스를 제공하기 위한 프로그램 명령어를 포함하고 있는 스크립트를 실행한다. 상기 스크립트는 사용자가 웹 페이지에서 원하는 정보를 수집하는 일종의 프로그램 명령어들의 집합으로, 예를 들어 사용자가 이메일을 수집하고자 하면 이메일 서버(160)에 접속하여 이메일 서비스 프로그램으로부터 이메일을 수집하는 명령어로 구성되며, 사용자가 자신의 은행 계좌 잔액 정보를 수집하고자 하면, 은행 계좌를 관리하는 서버(170)에 접속하여 사용자 계좌 서비스 프로그램으로부터 계좌잔액정보를 수집하는 명령어로 구성될 수 있다.
웹 플러그 인(103)은 사용자 인터페이스부(101)와 웹 브라우저(105) 간의 인터페이스를 제공하고, 사용자 인터페이스 화면을 통해 스크래핑 서비스 정보와 사용자로부터 상기 입력 값이 입력되면, 웹 브라우저(105)에게 상기 스크래핑 서비스 정보와 입력값을 전달한다.
웹브라우저(105)는 웹 플러그 인(103)에게 상기 스크래핑 서비스 정보와 상기 입력 값이 전달되면, 상기 서비스 정보에 상응하는 스크래핑 서비스를 위한 스크립트를 실행하여 웹 페이지로부터 필요한 정보를 추출하여 가져온다.
이 때 상기 추출된 정보는 사용자 인터페이스부(101)로 전달되어 상기 사용자 인터페이스 화면에 디스플레이된다.
스크립트 저장부(130)는 스크래핑 기술을 이용한 서비스를 제공하기 위해, 상기 스크래핑을 위한 명령들을 포함하는 적어도 하나의 스크립트를 저장하며, 모바일 디바이스(100)에 포함될 수도 있고 모바일 디바이스(100) 외부에 존재할 수도 있다. 즉, 웹서버나 모바일 디바이스의 파일시스템의 디렉토리에 존재할 수 있다.
스크립트 저장부(130)에 저장되는 스크립트의 예로는 이메일 정보 수집 스크립트(132), 금융정보 수집 스크립트(134) 및 포탈뉴스 정보 스크립트(136) 등을 들 수 있다. 이메일 정보 수집 스크립트(132)는 웹 브라우저(105)에 의해 실행되면 통신 네트워크(140)를 통해 이메일 웹 서비스(162)를 제공하는 이메일 웹서버(160)에 접속하여 원하는 이메일 정보를 추출하여 가져오는 명령어들을 포함하고 있다. 그리고 금융정보 수집 스크립트(134)는 웹 브라우저(105)에 의해 실행되면 통신 네트워크(140)를 통해 금융정보 웹 서비스(172)를 제공하는 금융정보 웹서버(170)에 접속하여 원하는 금융정보를 추출하여 가져오는 명령어들을 포함하고 있다. 또한 포탈뉴스 정보 수집 스크립트(136)는 웹 브라우저(105)에 의해 실행되면 통신 네트워크(140)를 통해 포탈뉴스 정보 웹 서비스(182)를 제공하는 금융정보 웹서버(180)에 접속하여 원하는 포탈 뉴스 정보를 추출하여 가져오는 명령어들을 포함하고 있다. 여기서 본 발명이 적용되는 통신 네트워크(140)는 와이파이(WiFi)망, 3G, 4G 망, 인터넷 망 등이 될 수 있다.
웹 플러그 인(103)은 상기 스크립트에 웹 브라우저(105)가 처리할 수 없는 명령어가 있을 경우, 상기 명령어를 처리하고, 모바일 디바이스(100)에 탑재된 웹브라우저(105)로부터 상기 스크립트 실행 결과 추출된 정보를 수신하여 사용자 인터페이스 화면에 디스플레이 되도록 사용자 인터페이스부(101)에 전달한다. 웹플러그인(103)은 모바일 디바이스를 사용하는 환경이나 사용자의 요구에 맞도록, 추출된 정보를 사용자 인터페이스 화면에 디스플레이하는 기능을 갖도록 구현될 수도 있다.
도 2는 본 발명에 의한 모바일 디바이스에서의 웹 스크린 스크래핑( Web Screen Scraping) 방법에 대한 일 실시예를 흐름도로 나타낸 것이다.
먼저, 웹 서버에 접속하여 웹 페이지로부터 필요한 정보를 추출하여 가져오는 스크립트를 생성한다.(S200 단계) 상기 스크립트의 예를 들면, 이메일 웹서버(162)의 웹서비스 프로그램의 HTML/스크립트로부터 원하는 정보를 추출하여 가져오는 이메일 정보 수집 스크립트(132), 금융 웹서버(17)의 금융정보 웹서비스 프로그램의 HTML/스크립트로부터 원하는 정보를 추출하여 가져오는 금융정보 수집 스크립트(134), 포탈뉴스 웹서버(180)의 포탈뉴스 웹서비스 프로그램의 HTML/스크립트로부터 원하는 정보를 추출하여 가져오는 뉴스정보 수집 스크립트(136)가 있을 수 있다.
모바일 디바이스에 탑재된 운영체제에서 동작하는 웹 브라우저(105)가 상기 생성된 스크립트를 실행한다.(S210단계)
웹브라우저(105)가 상기 스크립트를 실행할 때, 스크립트에 존재하는 명령어가 웹브라우저가 처리 가능하지 않은 것이 있을 수 있다. 예를 들어, 하드웨어를 제어하거나 GPS를 ON/OFF시키거나 파일을 읽는 등은 웹브라우저가 수행하지 못하는 경우가 있다. 이런 경우에는 웹 플러그인(103)이 수행할 수 있다.
즉, 상기 스크립트에 상기 웹 브라우저가 처리할 수 있는 명령어는 웹 브라우저(105)가 명령어를 처리하지만(S240단계), 웹 브라우저(105)가 처리할 수 없는 명령어가 있을 경우에는(S220단계), 웹 플러그 인(103)이 상기 명령어를 처리한다.(S230단계)
이렇게 하여 스크립트에 존재하는 명령어들이 웹브라우저(105) 및 웹플러그인(103)을 통해 통신 네트워크(14)를 거쳐 웹서버(160, 170, 180)에서 제공하는 웹페이지에서 원하는 정보를 추출하여 가져오면(S250단계), 상기 모바일 디바이스의 웹브라우저(105)가 상기 스크립트 실행 결과 추출된 정보를 웹 플러그 인(103)에게 전달한다.(S260단계) 그리고 나서 웹 플러그 인(103)으로부터 상기 추출된 정보를 받아 사용자 인터페이스부(101)를 통해 사용자 인터페이스 화면에 디스플레이한다.(S270단계)
도 3은 본 발명에 의한 모바일 디바이스에서의 웹 스크린 스크래핑( Web Screen Scraping) 방법에 대한 보다 구체적인 실시예를 흐름도로 나타낸 것이다.
모바일 디바이스(100)에는 웹 스크린 스크래핑을 제공하는 앱이 설치되고, 상기 앱에는 웹 브라우저(105), 사용자 인터페이스부(101), 웹플러그인(103)이 포함되는 것이 바람직하다. 그리고 스크립트들에는 웹사이트의 HTML/Srcipt를 분석하여 원하는 정보를 수집하는 명령어들로 미리 작성되어 스크립트 저장부(130)에 저장되어 있다. 여기서 스크립트 저장부(130)는 모바일 디바이스(100)에 위치할 경우에는 모바일 디바이스의 파일시스템의 디렉토리로 존재할 수 있고, 모바일 디바이스 외부의 웹서버에 존재할 수도 있다.
먼저, 사용자 인터페이스부(101)가 스크래핑 기술을 이용한 서비스에 필요한 스크래핑 서비스 정보와 입력 값을 받아들이는, 사용자 인터페이스 화면을 제공한다.(S300 단계)
상기 사용자 인터페이스 화면을 통해 사용자로부터 상기 스크래핑 서비스 정보와 입력 값이 입력되면, 웹 플러그 인(103)에 상기 스크래핑 서비스 정보와 상기 입력 값을 전달한다.(S310단계)
상기 웹 플러그 인(103)에게 상기 스크래핑 서비스 정보와 입력 값이 전달되면, 상기 모바일 디바이스에 설치된 앱에 내장된 웹브라우저(105)가 상기 스크래핑 서비스 정보에 상응하는 스크래핑 서비스를 위한 스크립트를 스크립트 저장부(130)로부터 읽어오거나 다운로드한다. 즉, 스크립트 저장부(130)가 모바일 디바이스의 파일시스템의 디렉토리로 구현되어 있을 경우에는 상기 파일시스템의 디렉토리로부터 스크립트를 읽어오고, 스크립트 저장부(130)가 모바일 디바이스 외부의 웹서버로 구현되어 있을 경우에는 상기 웹서버로부터 스크립트를 다운로드 받는다.
웹브라우저(105)는 독출하거나 다운로드한 상기 스크립트를 실행하여 통신 네트워크(140)를 거쳐 웹서버(160, 170, 180)의 웹 페이지로부터 필요한 정보를 추출하여 가져온다.(S320 단계)
웹브라우저(105)가 스크립트를 실행할 때, 스크립트에 존재하는 명령어가 웹브라우저(105)가 처리 가능하지 않은 것이 있을 수 있다. 예를 들어, 하드웨어를 제어하거나 GPS를 ON/OFF시키거나 파일을 읽는 등은 웹브라우저가 수행하지 못하는 경우가 있다. 이런 경우에는 웹 플러그인(103)이 수행할 수 있다. 즉, 상기 스크립트에 상기 웹 브라우저(105)가 처리할 수 있는 명령어는 웹 브라우저(105)가 명령어를 처리하고(S350단계), 웹 브라우저(105)가 처리할 수 없는 명령어가 있을 경우에는(S330단계), 웹 플러그 인(103)이 상기 명령어를 처리한다.(S340단계)
이렇게 하여 스크립트에 존재하는 명령어들이 모두 처리되면(S360단계), 상기 모바일 디바이스의 웹브라우저(105)가 상기 스크립트 실행 결과 추출된 정보를 웹 플러그 인(103)에게 전달한다.(S370단계) 그리고 나서 웹 플러그 인(103)으로부터 상기 추출된 정보를 받아 사용자 인터페이스부(101)를 통해 원하는 형태로 사용자 인터페이스 화면에 디스플레이한다.(S380단계) 상기 추출된 정보를 사용자가 원하는 형태로 사용자 인터페이스 화면에 디스플레이하는 것을 웹플러그인(103)이 할 수도 있다.
도 4는 본 발명이 적용되는 전체 시스템의 구성을 나타낸 것으로서, 전체 시스템은 모바일 디바이스(400), 스크립트 저장부(430) 및 웹서비스 프로그램이 있는 외부 웹서버(470)로 이루어지며, 모바일 디바이스(400)와 웹서버(470)는 통신망(480)을 통해 서로 통신한다. 여기서 스크립트 저장부(430)는 모바일 디바이스(400) 내에 위치할 수도 있다.
모바일 디바이스(400)는 안드로이드(Android), iOS, 윈도우(Windows), 블랙베리(Blackberry), 심비안 (Symbian), 웹OS, 바다(Bada) 등 운영체제가 탑재되어 있다. 모바일 디바이스(400)의 운영체제에 앱(app)이 설치되고, 상기 앱에는 운영체제 별로 웹브라우저(402), 사용자 인터페이스화면(406) 및 웹브라우저(402)와 사용자 인터페이스화면(406)을 인터페이스하는 웹플러그인(404)가 포함되는 것이 바람직하다.
웹브라우저(WebBrowser,엔진, 402)는 스크립트 명령을 처리하는 엔진으로서, 컴퓨터의 IE(인터넷 익스플로어)와 같이 웹 사이트를 조회할 수 있는 프로그램으로서 모바일 디바이스에 탑재되어 있다.
웹 플러그 인(WebPlugin, 404)은 사용자 인터페이스 화면(406)과 웹 브라우저(엔진, 404)과의 인터페이스를 담당하며, 웹브라우저(404)서 처리할 수 없고 Native코드에서만 처리 가능한 함수(Function)을 구현 한 모듈이다.
상기 스크립트는 표준 HTML문서에서 사용되어 인터랙티브(interactive)한 웹 페이지 개발을 위해 사용되는 function들의 그룹이며 일반적으로 자바 스크립트(javascript)로 작성된다. 또한 스크래핑을 위한 명령들이 상기 함수(function)들로 작성된다. 스크립트의 예를 들면, 이메일 웹서비스 프로그램의 HTML/스크립트(472)로부터 원하는 정보를 추출하여 가져오는 이메일 정보 수집 스크립트(432)가 있을 수 있다. 또한 금융정보 웹서비스 프로그램의 HTML/스크립트(474)로부터 원하는 정보를 추출하여 가져오는 금융정보 수집 스크립트(434)가 있을 수 있으며, 포탈뉴스 웹서비스 프로그램의 HTML/스크립트(476)로부터 원하는 정보를 추출하여 가져오는 뉴스정보 수집 스크립트(436)가 있을 수 있다.
그리고 스크립트 저장부(Script Storage, 430)는 스크립트, 예를 들어 이메일 정보 수집 스크립트(432), 금융정보 수집 스크립트(434) 및 뉴스정보 수집 스크립트(436) 등을 저장하며, 웹 서버나 모바일 디바이스의 파일 시스템의 디렉토리(Directiory) 등이 될 수 있다.
도 4의 시스템 동작을 설명하면, 먼저 데이터를 추출할 웹 사이트의 HTML/Script를 분석하여 원하는 데이터만 추출 하는 스크립트를 작성하여 스크립트 저장부(430)에 저장해 둔다.
사용자가 모바일 디바이스(400)에 탑재된 앱(App)을 통해 원하는 정보를 스크래핑하여 보기를 원하면, UI화면(406)을 통해 원하는 스크래핑 서비스 정보와 ID 패스워드 등 필요한 입력값을 입력하면, 서비스 하고자 하는 기능을 수행할 스크립트를 스크립트 저장부(430)에서 다운로드 한다. 다운로드 된 스크립트를 앱(App)에 내장된 운영체제 별 웹 브라우저(WebBrowser)를 이용하여 실행하여 원하는 정보를 추출하여 가져온다. 그리고 사용자 인터페이스 화면과의 인터페이스는 웹 플러그 인(Web Plugin) 이용하고, 추출된 데이터를 원하는 형태로 사용자 인터페이스(UI) 화면으로 구성한다.
본 발명은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터(정보 처리 기능을 갖는 장치를 모두 포함한다)가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 장치의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
100 : 모바일 디바이스 101 : 사용자 인터페이스부
103 : 웹 플러그 인 105 : 웹 브라우저
107 ; 앱 109 : 모바일 디바이스 운영체제
130 : 스크립트 저장부 132 : 이메일 정보 수집 스크립트
134 : 금융정보 수집 스크립트 136 : 포탈뉴스 정보 스크립트
140 : 통신 네트워크 150 : 사용자
160 : 이메일 웹서버 162 : 이메일 웹서비스
170 : 금융정보 웹 서버 172 : 금융웹 서비스
180 : 포탈뉴스 웹서버 192 : 포탈뉴스 웹서비스
400 : 모바일 디바이스 402 : 웹브라우저
404 : 웹 플러그 인 406 : UI화면
430 : 스크립트 저장부 432 : 이메일 정보 수집 스크립트
434 : 금융정보 수집 스크립트 436 : 뉴스 정보 수집 스크립트
470 : 웹서비스 프로그램 472 : 이메일 HTML/Script
474 : 금융정보 HTML/Script 476 : 포탈뉴스 HTML/Script
480 : 통신 네트워크

Claims (11)

  1. 웹 서버에 접속하여 웹 페이지로부터 필요한 정보를 추출하여 가져오는 스크립트를 생성하는 단계;
    모바일 디바이스에 탑재된 운영체제에서 동작하는 웹 브라우저가 상기 생성된 스크립트를 실행하는 단계; 및
    상기 스크립트 실행 결과 추출된 정보를 모바일 디바이스의 사용자 인터페이스 화면에 디스플레이하는 단계를 포함하는 것을 특징으로 하는 모바일 디바이스에서의 웹 스크린 스크래핑 방법.
  2. 제1항에 있어서, 상기 스크립트 실행단계는
    상기 스크립트에 상기 웹 브라우저가 처리할 수 없는 명령어가 있을 경우, 웹 플러그 인이 상기 명령어를 처리하는 단계를 더 포함하는 것을 특징으로 하는 모바일 디바이스에서의 웹 스크린 스크래핑 방법.
  3. 제1항 또는 제2항에 있어서, 상기 스크립트 실행 결과 추출된 정보를 사용자 인터페이스 화면에 디스플레이하는 단계는
    상기 모바일 디바이스의 웹브라우저가 상기 스크립트 실행 결과 추출된 정보를 웹 플러그 인에게 전달하는 단계; 및
    상기 웹 플러그 인으로부터 상기 추출된 정보를 받아 사용자 인터페이스 화면에 디스플레이하는 단계를 포함하는 것을 특징으로 하는 모바일 디바이스에서의 웹 스크린 스크래핑 방법.
  4. 스크래핑 기술을 이용한 서비스에 필요한 스크래핑 서비스 정보와 입력 값을 받아들이는, 모바일 디바이스의 사용자 인터페이스 화면을 제공하는 단계;
    상기 사용자 인터페이스 화면을 통해 사용자로부터 상기 스크래핑 서비스 정보와 입력 값이 입력되면, 웹 플러그 인에 상기 스크래핑 서비스 정보와 상기 입력 값을 전달하는 단계;
    상기 웹 플러그 인에게 상기 스크래핑 서비스 정보와 입력 값이 전달되면, 상기 모바일 디바이스에 설치된 앱에 내장된 웹브라우저가 상기 스크래핑 서비스 정보에 상응하는 스크래핑 서비스를 위한 스크립트를 스크립트 저장부로부터 읽어오는 단계;
    상기 웹브라우저가 상기 읽어온 스크립트를 실행하여 웹 페이지로부터 필요한 정보를 추출하여 가져오는 단계; 및
    상기 추출된 정보를 사용자 인터페이스 화면에 디스플레이하는 단계를 포함하는 것을 특징으로 하는 모바일 디바이스에서의 웹 스크린 스크래핑 방법
  5. 제4항에 있어서, 상기 스크립트 실행단계는
    상기 스크립트에 상기 웹 브라우저가 처리할 수 없는 명령어가 있을 경우, 웹 플러그 인이 상기 명령어를 처리하는 단계를 더 포함하는 것을 특징으로 하는 모바일 디바이스에서의 웹 스크린 스크래핑 방법.
  6. 제4항 또는 제5항에 있어서, 상기 스크립트 실행 결과 추출된 정보를 사용자 인터페이스 화면에 디스플레이하는 단계는
    상기 모바일 디바이스에 탑재된 웹브라우저가 상기 스크립트 실행 결과 추출된 정보를 웹 플러그 인에게 전달하는 단계; 및
    상기 웹 플러그 인으로부터 상기 추출된 정보를 받아 사용자 인터페이스 화면에 디스플레이하는 단계를 포함하는 것을 특징으로 하는 모바일 디바이스에서의 웹 스크린 스크래핑 방법.
  7. 스크래핑 기술을 이용한 서비스에 필요한 스크래핑 서비스 정보에 대한 정보와 입력 값을 받아들이는 사용자 인터페이스 화면을 제공하는 사용자 인터페이스부;
    상기 서비스를 제공하기 위한 스크립트를 실행하는 웹 브라우저; 및
    상기 사용자 인터페이스 화면과 상기 웹 브라우저 간의 인터페이스를 제공하고, 상기 사용자 인터페이스 화면을 통해 사용자로부터 상기 입력 값이 입력되면, 상기 웹 브라우저에게 전달하는 웹 플러그인을 포함하고,
    상기 웹브라우저는
    상기 웹 플러그 인에게 상기 스크래핑 서비스 정보와 입력 값이 전달되면, 상기 스크래핑 서비스 정보에 상응하는 스크래핑 서비스를 위한 스크립트를 실행하여 웹 페이지로부터 필요한 정보를 추출하여 가져오고,
    상기 추출된 정보는 상기 사용자 인터페이스 화면에 디스플레이되는 것을 특징으로 하는 웹 스크린 스크래핑을 제공하는 모바일 디바이스.
  8. 제7항에 있어서,
    스크래핑 기술을 이용한 서비스를 제공하기 위해, 상기 스크래핑을 위한 명령들을 포함하는 적어도 하나의 스크립트를 저장하는 스크립트 저장부를 더 포함하는 것을 특징으로 하는 웹 스크린 스크래핑을 제공하는 모바일 디바이스.
  9. 제7항에 있어서, 상기 웹 플러그 인은
    상기 스크립트에 상기 웹 브라우저가 처리할 수 없는 명령어가 있을 경우, 상기 명령어를 처리하고, 상기 모바일 디바이스에 탑재된 웹브라우저로부터 상기 스크립트 실행 결과 추출된 정보를 수신하여 사용자 인터페이스 화면에 디스플레이되도록 상기 사용자 인터페이스부에 전달하는 것을 특징으로 하는 웹 스크린 스크래핑을 제공하는 모바일 디바이스.
  10. 제7항에 있어서, 상기 웹 브라우저, 상기 웹 플러그 인 및 상기 사용자 인터페이스부는
    모바일 디바이스에 탑재된 운영체제에서 동작하는 앱에 포함되어 있는 것을 특징으로 하는 웹 스크린 스크래핑을 제공하는 모바일 디바이스.
  11. 스크래핑 기술을 이용한 서비스에 필요한 입력 값을 받아들이는, 모바일 디바이스의 사용자 인터페이스 화면을 제공하는 단계;
    상기 사용자 인터페이스 화면을 통해 사용자로부터 상기 입력 값이 입력되면, 웹 플러그 인에 상기 입력 값을 전달하는 단계;
    상기 웹 플러그 인에게 상기 입력 값이 전달되면, 상기 모바일 디바이스에 설치된 앱에 내장된 웹브라우저가 상기 입력값에 상응하는 스크래핑 서비스를 위한 스크립트를 스크립트 저장부로부터 읽어오는 단계;
    상기 웹브라우저가 상기 읽어온 스크립트를 실행하여 웹 페이지로부터 필요한 정보를 추출하여 가져오는 단계; 및
    상기 추출된 정보를 사용자 인터페이스 화면에 디스플레이하는 단계를 모바일 디바이스에서 실행하는 프로그램을 기록한 기록매체.

KR1020120095868A 2012-08-30 2012-08-30 모바일 디바이스에서의 웹 스크린 스크래핑 방법 및 웹 스크린 스크래핑을 제공하는 모바일 디바이스 KR101402146B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120095868A KR101402146B1 (ko) 2012-08-30 2012-08-30 모바일 디바이스에서의 웹 스크린 스크래핑 방법 및 웹 스크린 스크래핑을 제공하는 모바일 디바이스

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120095868A KR101402146B1 (ko) 2012-08-30 2012-08-30 모바일 디바이스에서의 웹 스크린 스크래핑 방법 및 웹 스크린 스크래핑을 제공하는 모바일 디바이스

Publications (2)

Publication Number Publication Date
KR20140028789A true KR20140028789A (ko) 2014-03-10
KR101402146B1 KR101402146B1 (ko) 2014-06-03

Family

ID=50642114

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120095868A KR101402146B1 (ko) 2012-08-30 2012-08-30 모바일 디바이스에서의 웹 스크린 스크래핑 방법 및 웹 스크린 스크래핑을 제공하는 모바일 디바이스

Country Status (1)

Country Link
KR (1) KR101402146B1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101681462B1 (ko) * 2015-05-28 2016-12-02 알서포트 주식회사 브라우저 및 개별 통신로 의사플러그인을 이용한 정보처리 방법
KR101982085B1 (ko) * 2018-04-25 2019-05-27 주식회사쿠콘 스크립트 엔진을 이용한 데이터 스크래핑 시스템, 방법 및 컴퓨터 프로그램
KR102009336B1 (ko) * 2018-04-25 2019-08-12 주식회사쿠콘 미리 스크래핑된 빅데이터를 이용한 클라우드 스크래핑 시스템 및 방법과, 이를 위한 컴퓨터 프로그램
KR20190124630A (ko) * 2018-04-25 2019-11-05 주식회사쿠콘 스크립트 엔진을 이용한 데이터 스크래핑 시스템, 방법 및 컴퓨터 프로그램
KR20220139180A (ko) * 2021-04-07 2022-10-14 주식회사 카카오뱅크 스크래핑 자동화 방법 및 이를 수행하는 서버

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4158455A4 (en) * 2020-05-25 2024-02-07 Microsoft Technology Licensing, LLC A CRAWLER OF WEB AUTOMATION SCRIPTS

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100132576A (ko) * 2009-06-10 2010-12-20 (주)비즈스프링 스크래핑 및 파싱을 이용한 웹사이트 동적 페이지의 웹 로그 분석 시스템 및 분석 방법

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101681462B1 (ko) * 2015-05-28 2016-12-02 알서포트 주식회사 브라우저 및 개별 통신로 의사플러그인을 이용한 정보처리 방법
KR101982085B1 (ko) * 2018-04-25 2019-05-27 주식회사쿠콘 스크립트 엔진을 이용한 데이터 스크래핑 시스템, 방법 및 컴퓨터 프로그램
KR102009336B1 (ko) * 2018-04-25 2019-08-12 주식회사쿠콘 미리 스크래핑된 빅데이터를 이용한 클라우드 스크래핑 시스템 및 방법과, 이를 위한 컴퓨터 프로그램
KR20190124630A (ko) * 2018-04-25 2019-11-05 주식회사쿠콘 스크립트 엔진을 이용한 데이터 스크래핑 시스템, 방법 및 컴퓨터 프로그램
US10635488B2 (en) 2018-04-25 2020-04-28 Coocon Co., Ltd. System, method and computer program for data scraping using script engine
KR20220139180A (ko) * 2021-04-07 2022-10-14 주식회사 카카오뱅크 스크래핑 자동화 방법 및 이를 수행하는 서버

Also Published As

Publication number Publication date
KR101402146B1 (ko) 2014-06-03

Similar Documents

Publication Publication Date Title
AU2012370492B2 (en) Graphical overlay related to data mining and analytics
US10831858B2 (en) Mobile enablement of existing web sites
CN107368487B (zh) 一种页面组件动态布局方法、装置及客户端
KR101402146B1 (ko) 모바일 디바이스에서의 웹 스크린 스크래핑 방법 및 웹 스크린 스크래핑을 제공하는 모바일 디바이스
US8386955B1 (en) User-optimized content for web browsing windows
US9485240B2 (en) Multi-account login method and apparatus
US20190058667A1 (en) Apparatus, hybrid apparatus, and method for network resource access
EP2972822B1 (en) System and method to enable web property access to a native application
CN106874519B (zh) 页面展现方法和装置
US9208235B1 (en) Systems and methods for profiling web applications
WO2014204877A1 (en) Capturing website content through capture services
RU2595524C2 (ru) Устройство и способ обработки содержимого веб-ресурса в браузере
US20170192941A1 (en) Computer-Automated Generation of Application Deep Links
AU2013213683B2 (en) A method and system of application development for multiple device client platforms
US10705858B2 (en) Automatic import of third party analytics
US9571557B2 (en) Script caching method and information processing device utilizing the same
CN112956157A (zh) 追踪客户端设备事件的系统和方法
CN113590974A (zh) 推荐页面配置方法、装置、电子设备和计算机可读介质
CN107451163B (zh) 一种动画显示方法和装置
CN109582580B (zh) 用于调试页面的系统、方法和装置
CN108829828B (zh) 一种网页显示方法、装置、电子设备及可读存储介质
US9680967B2 (en) Method of using application, gateway using the method, terminal using the method, and terminal system using the method
RU2634221C2 (ru) Способ и устройство для отрисовки представления электронного документа на экране
US20180004802A1 (en) User interface for searching referenced information
CN117112944A (zh) 在静态网页中提供场境功能的方法和系统

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170510

Year of fee payment: 6