KR101722157B1 - 정보 수집 장치 및 이를 이용한 웹 사이트의 정보 수집 방법 - Google Patents

정보 수집 장치 및 이를 이용한 웹 사이트의 정보 수집 방법 Download PDF

Info

Publication number
KR101722157B1
KR101722157B1 KR1020160001435A KR20160001435A KR101722157B1 KR 101722157 B1 KR101722157 B1 KR 101722157B1 KR 1020160001435 A KR1020160001435 A KR 1020160001435A KR 20160001435 A KR20160001435 A KR 20160001435A KR 101722157 B1 KR101722157 B1 KR 101722157B1
Authority
KR
South Korea
Prior art keywords
information
website
web page
rendering
indexing
Prior art date
Application number
KR1020160001435A
Other languages
English (en)
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 KR1020160001435A priority Critical patent/KR101722157B1/ko
Application granted granted Critical
Publication of KR101722157B1 publication Critical patent/KR101722157B1/ko

Links

Images

Classifications

    • G06F17/3089
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F17/30946
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • 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)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Tourism & Hospitality (AREA)
  • Data Mining & Analysis (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)

Abstract

본 발명의 실시 예에 따른 정보 수집 장치를 이용한 웹 사이트의 정보 수집 방법은, 웹 사이트에 대응하는 접속 정보를 획득하는 단계; 상기 접속 정보에 대응하는 웹 페이지를 에뮬레이션하는 단계; 상기 에뮬레이션된 웹 페이지의 렌더링 정보로부터, 상기 웹 페이지의 구조 정보를 획득하는 단계; 및 상기 구조 정보를 이용하여, 상기 웹 사이트를 인덱싱하는 단계를 포함한다.

Description

정보 수집 장치 및 이를 이용한 웹 사이트의 정보 수집 방법{A INFORMATION CRAWLING APPRATUS AND A METHOD FOR CRAWLING INFORMATION OF WEB SITES USING IT}
본 발명은 정보 수집 장치 및 이를 이용한 웹 사이트의 정보 수집 방법에 관한 것이다. 보다 구체적으로, 본 발명은 웹 사이트 분석 및 모니터링을 위한 정보를 수집하는 정보 수집 장치 및 이를 이용한 웹 사이트의 정보 수집 방법에 관한 것이다.
인터넷 기술의 발달로 온라인 환경의 중요성이 부각되면서 웹 플랫폼 컨텐츠에 대한 수요가 증가하고 있다. 이에 맞추어, 다양한 웹 플랫폼 기반의 웹 서비스 컨텐츠들이 매우 폭넓게 제공되고 있다.
이와 같은 웹 플랫폼 기반 컨텐츠들의 수요가 증가됨에 따라, 이들에 대한 데이터를 수집하고 분석하여 웹 사이트의 방문률 증가와 광고 효과 증대에 따른 추가적인 이익을 창출하기 위한 분석 서비스의 요구도 증가하고 있다.
이에 따라, 분석 서비스의 기반이 되는 웹 사이트에 대한 효율적인 데이터베이스 구축이 요구되고 있다.
그러나, 현재의 웹 분석 서비스를 위한 데이터베이스는 웹 사이트 HTML 코드의 텍스트 정보를 수집 및 키워드 분석하여 웹 컨텐츠의 내용이나 서비스를 분류하는 데 그치고 있는 실정이다. 코드상에서 확인되는 텍스트 정보는 실제 최종 사용자에게 보여지는 정보와는 차이가 있을 수 있기 때문에 그 분류 정확도가 떨어질 뿐만 아니라, 키워드간 중요도를 산정함에 있어서도 문제점이 발생하고 있다.
또한, 이와 같은 문제점은 최근 사용자 인터렉션 요소 검증 및 분석해야 할 플랫폼이나 개발 환경이 다양화됨에 따라 더욱 가중되고 있다. 웹 플랫폼 서비스는 실제 사용자에게 보여지는 측면에서의 정보가 중요하지만, 이는 사람이 직접 사용 결과를 확인하여야 하므로 시간 및 비용 면에서 많은 손해를 보고 있는 실정이다.
본 발명은 상기와 같은 문제점을 해결하기 위한 것으로, 실제 사용자에게 보여지는 측면에서의 사용성 정보 및 그 검증을 위한 웹 사이트 플랫폼의 구조 정보를 효율적으로 수집할 수 있고, 이를 텍스트 정보와 연동하여, 웹 플랫폼 서비스에 대한 분류 및 후처리 정확도를 함께 향상시킬 수 있는 정보 수집 장치 및 이를 이용한 웹 사이트의 정보 수집 방법을 제공하는데 그 목적이 있다.
상기와 같은 과제를 해결하기 위한 본 발명의 실시 예에 따른 방법은, 정보 수집 장치를 이용한 웹 사이트의 정보 수집 방법에 있어서, 웹 사이트에 대응하는 접속 정보를 획득하는 단계; 상기 접속 정보에 대응하는 웹 페이지를 에뮬레이션하는 단계; 상기 에뮬레이션된 웹 페이지의 렌더링 정보로부터, 상기 웹 페이지의 구조 정보를 획득하는 단계; 및 상기 구조 정보를 이용하여, 상기 웹 사이트를 인덱싱하는 단계를 포함한다.
또한, 상기와 같은 과제를 해결하기 위한 본 발명의 실시 예에 따른 장치는, 웹 사이트의 정보를 수집하는 정보 수집 장치에 있어서, 웹 사이트에 대응하는 접속 정보를 획득하는 접속 정보 획득부; 상기 접속 정보에 대응하는 웹 페이지를 에뮬레이션하는 에뮬레이션 처리부; 상기 에뮬레이션된 웹 페이지의 렌더링 정보로부터, 상기 웹 페이지의 구조 정보를 획득하는 구조 정보 획득부; 상기 구조 정보를 이용하여, 상기 웹 사이트를 인덱싱하는 인덱싱부를 포함한다.
한편, 상기와 같은 과제를 해결하기 위한 본 발명의 실시 예에 따른 방법은 상기 방법을 컴퓨터에서 실행시키기 위한 컴퓨터가 읽을 수 있는 프로그램 및 상기 프로그램이 기록된 기록 매체로 구현될 수 있다.
본 발명의 실시 예에 따르면, 에뮬레이션된 웹 페이지로부터 웹 사이트의 구조 정보를 추출할 수 있고, 상기 구조 정보를 응용하여, 실제 사용자의 플랫폼 서비스 이용 측면에서의 정보를 제공하는 다양한 후처리 엔진에 유용한 정보를 제공할 수 있다.
또한, 본 발명의 실시 예에 따르면, 구조 정보와 연관하여 텍스트 정보를 분석함에 따라 기존 대비 정확도가 향상된 시멘틱 컨텍스트 정보를 획득할 수 있다.
이에 따라, 본 발명은 실제 사용자에게 보여지는 측면에서의 사용성 정보 및 그 검증을 위한 웹 사이트 플랫폼의 구조 정보를 효율적으로 수집할 수 있고, 이를 텍스트 정보와 연동하여, 웹 플랫폼 서비스에 대한 분류 및 후처리 정확도를 함께 향상시킬 수 있는 정보 수집 장치 및 이를 이용한 웹 사이트의 정보 수집 방법을 제공할 수 있다.
도 1은 본 발명의 실시 예에 따른 전체 시스템을 도시한 블록도이다.
도 2는 본 발명의 실시 예에 따른 정보 수집 장치의 구성을 보다 구체적으로 도시한 블록도이다.
도 3은 본 발명의 실시 예에 따른 웹 사이트의 정보 수집 방법을 설명하기 위한 흐름도이다.
도 4는 본 발명의 실시 예에 따른 구조 정보를 예시하기 위한 도면이다.
도 5는 본 발명의 실시 예에 따라 추출되는 구조 정보 및 시멘틱 컨텍스트 정보를 설명하기 위한 도면이다.
이하의 내용은 단지 본 발명의 원리를 예시한다. 그러므로 당업자는 비록 본 명세서에 명확히 설명되거나 도시되지 않았지만 본 발명의 원리를 구현하고 본 발명의 개념과 범위에 포함된 다양한 장치를 발명할 수 있는 것이다. 또한, 본 명세서에 열거된 모든 조건부 용어 및 실시예들은 원칙적으로, 본 발명의 개념이 이해되도록 하기 위한 목적으로만 명백히 의도되고, 이와 같이 특별히 열거된 실시예들 및 상태들에 제한적이지 않는 것으로 이해되어야 한다.
또한, 본 발명의 원리, 관점 및 실시예들 뿐만 아니라 특정 실시예를 열거하는 모든 상세한 설명은 이러한 사항의 구조적 및 기능적 균등물을 포함하도록 의도되는 것으로 이해되어야 한다. 또한 이러한 균등물들은 현재 공지된 균등물뿐만 아니라 장래에 개발될 균등물 즉 구조와 무관하게 동일한 기능을 수행하도록 발명된 모든 소자를 포함하는 것으로 이해되어야 한다.
따라서, 예를 들어, 본 명세서의 블럭도는 본 발명의 원리를 구체화하는 예시적인 회로의 개념적인 관점을 나타내는 것으로 이해되어야 한다. 이와 유사하게, 모든 흐름도, 상태 변환도, 의사 코드 등은 컴퓨터가 판독 가능한 매체에 실질적으로 나타낼 수 있고 컴퓨터 또는 프로세서가 명백히 도시되었는지 여부를 불문하고 컴퓨터 또는 프로세서에 의해 수행되는 다양한 프로세스를 나타내는 것으로 이해되어야 한다.
프로세서 또는 이와 유사한 개념으로 표시된 기능 블럭을 포함하는 도면에 도시된 다양한 소자의 기능은 전용 하드웨어뿐만 아니라 적절한 소프트웨어와 관련하여 소프트웨어를 실행할 능력을 가진 하드웨어의 사용으로 제공될 수 있다. 프로세서에 의해 제공될 때, 상기 기능은 단일 전용 프로세서, 단일 공유 프로세서 또는 복수의 개별적 프로세서에 의해 제공될 수 있고, 이들 중 일부는 공유될 수 있다.
또한 프로세서, 제어 또는 이와 유사한 개념으로 제시되는 용어의 명확한 사용은 소프트웨어를 실행할 능력을 가진 하드웨어를 배타적으로 인용하여 해석되어서는 아니되고, 제한 없이 디지털 신호 프로세서(DSP) 하드웨어, 소프트웨어를 저장하기 위한 롬(ROM), 램(RAM) 및 비 휘발성 메모리를 암시적으로 포함하는 것으로 이해되어야 한다. 주지관용의 다른 하드웨어도 포함될 수 있다.
본 명세서의 청구범위에서, 상세한 설명에 기재된 기능을 수행하기 위한 수단으로 표현된 구성요소는 예를 들어 상기 기능을 수행하는 회로 소자의 조합 또는 펌웨어/마이크로 코드 등을 포함하는 모든 형식의 소프트웨어를 포함하는 기능을 수행하는 모든 방법을 포함하는 것으로 의도되었으며, 상기 기능을 수행하도록 상기 소프트웨어를 실행하기 위한 적절한 회로와 결합된다. 이러한 청구범위에 의해 정의되는 본 발명은 다양하게 열거된 수단에 의해 제공되는 기능들이 결합되고 청구항이 요구하는 방식과 결합되기 때문에 상기 기능을 제공할 수 있는 어떠한 수단도 본 명세서로부터 파악되는 것과 균등한 것으로 이해되어야 한다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명하기로 한다.
도 1은 본 발명의 실시 예에 따른 전체 시스템을 도시한 블록도이다.
도 1을 참조하면, 본 발명의 실시 예에 따른 전체 시스템은 컨텐츠를 제공하는 각각의 웹 사이트(300)들로부터 정보를 수집하여 인덱싱하는 정보 수집 장치(100)와, 상기 정보 수집 장치(100)로부터 인덱싱된 정보를 후처리하는 후처리 엔진(200)을 포함하여 구성된다.
정보 수집 장치(100)는 각각의 웹 사이트(300)와 네트워크를 통해 연결될 수 있다. 여기서 상기 각 네트워크는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 부가가치 통신망(Value Added Network; VAN), 개인 근거리 무선통신(Personal Area Network; PAN), 이동 통신망(mobile radiocommunication network) 또는 위성 통신망 등과 같은 모든 종류의 유/무선 네트워크로 구현될 수 있다.
또한, 상기 웹 사이트(300)는 다양한 플랫폼을 통해 온라인상의 컨텐츠를 제공할 수 있다. 웹 사이트(300)는 예를 들어, 일반 온라인 쇼핑몰, 인터넷 포털 사이트, 개인 블로그 사이트, 뉴스 사이트, 커뮤니티 사이트 등이 예시될 수 있다.
또한, 정보 수집 장치(100)는 각각의 웹 사이트(300)들에 대한 접속 정보가 획득되면, 각 접속 정보에 대응하는 웹 페이지에 접근하여, 상기 접속 정보에 대응하는 웹 페이지를 에뮬레이션하고, 상기 에뮬레이션 정보로부터 각 웹 사이트(300)에 대한 구조 정보와, 시멘틱(SEMENTIC) 컨텍스트(CONTEXT) 정보를 수집하며, 상기 수집된 구조 정보 및 시멘틱 컨텍스트 정보를 인덱싱 및 모니터링하기 위한 하나 이상의 처리부를 포함할 수 있다.
또한, 정보 수집 장치(100)는 인덱싱된 정보를 후처리 엔진(200)으로 제공할 수 있다. 여기서, 후처리 엔진(200)은 상기 인덱싱 정보로부터 사용성 분석 또는 검색 등을 처리하기 위한 하나 이상의 엔진 모듈을 포함할 수 있다.
예를 들어, 후처리 엔진(200)은 인덱싱 정보의 구조 정보 및 시멘틱 컨텍스트 정보로부터 웹 플랫폼에 대한 사용자 경험(UX)을 평가하거나, 사용성에 대한 오류 등을 검수하거나, 플랫폼 유형을 분류할 수 있는 사용성 분석 엔진을 포함할 수 있다.
그리고, 정보 수집 장치(100)는 상기 후처리 엔진(200)과 유선 또는 무선 네트워크를 통해 연결될 수 있다. 또한, 정보 수집 장치(100)는 후처리 엔진(200)과 연동하는 하나 이상의 서버 장치로도 구성될 수 있다. 서버 장치는 정보 수집 장치(100) 및 후처리 엔진(200)을 포함하는 하나의 서버로 구성되거나 각 모듈별 서버를 구성하는 독립 엔진으로 구성될 수도 있다.
도 2는 본 발명의 실시 예에 따른 정보 수집 장치의 구성을 보다 구체적으로 도시한 블록도이다.
본 발명의 실시 예에 따르면, 정보 수집 장치(100)는 제어부(110), 통신부(105), 접속 정보 획득부(110), 에뮬레이션 처리부(120), 구조 정보 획득부(130), 텍스트 정보 획득부(140), 연관 정보 처리부(150), 인덱싱부(160) 및 모니터링부(170)을 포함하여 구성될 수 있다.
제어부(110)는 정보 수집 장치(100)의 각 구성요소의 동작 및 기능의 실행을 전반적으로 제어한다. 예를 들어, 제어부(110)는 접속 정보 획득, 에뮬레이션 처리, 구조 정보 획득, 텍스트 정보 획득, 연관 정보처리, 인덱싱, 모니터링 및 메모리 관리에 따른 정보 수집 기능의 전부 또는 일부를 제어하기 위한 프로세서 또는 이를 실행하기 위한 프로그램으로 구현될 수 있다.
그리고, 통신부(105)는 정보 수집 장치(100)와 이동 통신망 또는 인터넷망을 포함하는 유/무선 통신 시스템 사이 또는 정보 수집 장치(100)와 후처리 엔진(200)이 위치한 네트워크 사이의 유/무선 통신을 가능하게 하는 하나 이상의 통신 모듈을 포함할 수 있다. 또한, 통신부(105)는 송신된 신호를 부호화 및 변조하고, 수신된 신호를 복조 및 복호화하는 모뎀(modem)과, RF 신호를 처리하는 RF 프론트 엔드를 포함할 수 있다.
접속 정보 획득부(120)는 수집할 웹 사이트에 대응하는 접속 정보를 획득하고, 획득된 접속 정보를 메모리(180)에 저장 및 관리한다. 여기서, 접속 정보는 네트워크상의 웹 사이트에 접속하기 위한 접속 정보를 포함하며, 예를 들어, 특정 웹 페이지의 URL 등이 예시될 수 있다.
또한, 접속 정보 획득부(120)는 관리자로부터 미리 입력되거나 메모리(180)에 미리 저장된 접속 정보를 에뮬레이션 처리부(130)로 전달하여, 에뮬레이션 처리부(130)가 상기 접속 정보에 대응되는 웹 사이트에 접근할 수 있도록 한다.
에뮬레이션 처리부(130)는 상기 접속 정보에 기초하여 통신부(105)를 통해 각각의 웹 사이트(300)에 대한 웹 페이지에 접속할 수 있으며,상기 웹 페이지를 브라우저 동작 환경에 따라 메모리상에 렌더링한다.
여기서, 에뮬레이션 처리부(130)는 웹 사이트가 렌더링된 이후에 확인가능한 정보를 렌더링 정보로부터 추출하기 위해 웹 브라우저를 별도 내장할 수 있다.
이에 따라, 에뮬레이션 처리부(130)는 웹 페이지의 HTML을 파싱하여 문서 객체 모델(DOM) 정보에 대응하는 트리(TREE)를 일부 또는 전부 구성하고, 문서 객체 모델 정보를 스타일 정보와 결합하여 렌더(RENDER) 트리를 일부 또는 전부 구성하며, 렌더 트리를 배치 및 렌더 트리에 대한 페인팅을 수행하는 일련의 렌더링 처리 동작을 수행할 수 있다 다만, 에뮬레이션 처리부(130)는 처리 효율을 위해, 데이터 수집을 위한 문서 객체 모델 정보 생성 및 렌더 트리 생성까지 수행하고, 배치 및 페인팅 동작은 생략할 수도 있다.
이에 따라, 에뮬레이션 처리부(130)는 접속 정보에 대응하는 HTML 문서를 일부 파싱하여, 트리형태의 문서 객체 모델 정보를 생성할 수 있다. 또한, 외부 CSS 파일과 문서 내의 스타일 요소에 있는 스타일 데이터를 파싱하여, 렌더 트리 정보를 일부 생성할 수 있다. 그리고, 에뮬레이션 처리부(130)는 상기 일부 렌더 트리 정보에 대한 레이아웃처리를 수행할 수 있으며, 이에 따른 각각의 문서 객체 모델 정보가 화면상의 어느 위치에 나타날 것인지에 대한 좌표가 지정될 수 있다.
이와 같이, 에뮬레이션 처리부(130)는 상기 별도 내장된 웹 브라우저를 통해 웹 사이트가 구현된 형태를 렌더링함으로써 사용자가 실제 체감할 수 있는 정보를 추출할 수 있는 데이터를 메모리(180)상에 제공할 수 있다.
여기서, 상기 사용자가 실제적으로 체감하는데 필요한 정보는, 본 발명의 실시 예에 따른 구조 정보로 정의될 수 있다.
구조 정보는 웹 페이지의 전체적인 네비게이션 정보, 웹 페이지의 트리 구조에 따른 관계 정보 및 웹 페이지 사용에 따른 플랫폼의 동작 정보를 포함할 수 있다. 또한, 상기 구조 정보는 상기 렌더링 정보상에 문서 객체 모델 정보를 미리 결정된 패턴에 따라 파싱하여 획득될 수 있다.
여기서, 구조 정보 획득부(140)는 상기 구조 정보를 획득하기 위해 미리 설정되는 다양한 패턴 로직 및 호출 정보를 메모리(180)에 저장 및 관리할 수 있으며, 상기 패턴 로직 또는 호출 정보에 기초하여 상기 렌더링 정보로부터 구조 정보를 추출 및 획득할 수 있다.
일 예로, 구조 정보 획득부(140)는 상기 메모리(180)상의 렌더링 정보로부터 상기 구조 정보에 대응하는 하나 이상의 문서 객체 모델 엘리먼트를 호출하여 구조 정보를 획득할 수 있다. 예를 들어, 구조 정보 획득부(140)는 상기 렌더링된 웹 페이지에 대해 JAVASCRIPT를 실행하여 필요한 문서 객체 모델 엘리먼트를 각각 호출하고, 호출된 정보를 이용하여 구조 정보를 구성할 수 있다.
예를 들어, 상기 구조 정보는 상기 웹 페이지의 렌더링 정보로부터 추출되는 상기 웹 사이트의 GNB(global navigation bar) 정보를 포함하거나, 단계별 메뉴 정보, 메인(MAIN) 정보, 헤더(HEADER) 정보, 푸터(FOOTER) 정보 및 이들의 연결 관계(트리 구조 또는 노드 구조) 정보를 포함할 수 있다.
또한, 상기 구조 정보 획득부(140)는 상기 렌더링 정보로부터 미리 설정된 로직 패턴에 매칭되는 정보를 파싱하고, 상기 파싱된 정보로부터 상기 구조 정보를 생성할 수도 있다. 이 경우, 구조 정보 획득부(140)는 미리 설정된 로직 패턴 정보를 저장 및 관리할 수 있으며, 로직 패턴 정보를 사용자에 의해 학습하거나 갱신할 수 있다.
이에 따라, 구조 정보 획득부(140)는 웹 페이지가 렌더링된 이후에, 사용자가 체감할 수 있는 실제 동작 방식 등을 포함하는 웹 페이지의 구조 정보를 획득할 수 있게 된다.
한편, 텍스트 정보 획득부(150)는 접속 정보에 따라 접속된 웹 사이트(300)또는 상기 에뮬레이션 처리부(130)에서 에뮬레이션된 렌더링 정보로부터 텍스트 기반의 수집 가능한 컨텐츠를 수집하고, 수집된 컨텐츠의 텍스트 정보를 연관 정보 처리부(160)로 전달한다. 텍스트 정보의 예로는 컨텐츠 제목, 생성 날짜, 저자, 게시 URL, 게시 웹 사이트명, 웹 사이트 기관명, 컨텐츠에 포함된 동영상 메타 데이터 등 다양한 정보가 예시될 수 있다.
그리고, 연관 정보 처리부(160)는 상기 텍스트 정보와 상기 구조 정보에 기초하여, 시멘틱(SEMENTIC) 컨텍스트(CONTEXT) 정보를 생성하고 인덱싱부(170)로 전달한다.
여기서 시멘틱 컨텍스트 정보는 사용자 경험 측면에서의 웹 사이트(300)의 내용 정보를 포함할 수 있다. 시멘틱 컨텍스트 정보는 상호 참조 가능한 상기 텍스트 정보와 구조 정보에 따라 상기 웹 사이트(300)의 주요 컨텍스트, 그 의미 및 각 컨텍스트의 기능 동작 정보 중 적어도 하나를 나타낼 수 있으며, 인덱싱부(170)를 통해 인덱싱될 수 있다.
연관 정보 처리부(160)는 시멘틱 컨텍스트 정보를 생성하기 위한 키워드 분석 및 구조 정보 연관 모듈을 포함할 수 있다.
이에 따라, 연관 정보 처리부(160)는 먼저 키워드 분석 모듈을 통해 텍스트 정보로부터 주요 키워드 및 주요 키워드를 포함하는 HTML 태그와 속성값 그리고, 주요 키워드에 대응하는 의미 정보 등을 추출할 수 있다.
또한, 연관 정보 처리부(160)는 구조 정보 연관 모듈을 통해 구조 정보 획득부(140)로부터 획득되는 구조 정보와 상기 각 주요 키워드들에 대응하는 연관 정보를 매칭하여, 상기 주요 키워드들에 대한 구조 내 위치 및 기능 동작 정보 등을 나타내는 시멘틱 컨텍스트 정보를 생성할 수 있다.
이에 따라, 연관 정보 처리부(160)는 생성된 시멘틱 컨텍스트 정보를 인덱싱부(170)로 전달할 수 있다.
인덱싱부(170)는 수신된 시멘틱 컨텍스트 정보를 상기 접속 정보에 대응하는 웹 사이트(300)의 식별 정보에 따라 분류 및 저장함으로써, 인덱싱을 처리할 수 있다. 또한, 인덱싱부(170)는 후처리 엔진(200)의 요청에 따라 상기 인덱싱된 정보를 후처리 엔진(200)으로 제공할 수도 있다.
한편, 모니터링부(190)는 상기 인덱싱부(170)에 의해 인덱싱된 웹 사이트(300)를 모니터링하며, 웹 사이트(300)에 대한 구조 정보 변경율을 주기적으로 측정하여, 변경률이 일정 값 이상인 경우, 상기 웹 사이트(300)에 대한 재 인덱싱을 처리하도록 제어부(110)에 갱신 요청을 전달할 수 있다.
또한, 모니터링부(190)는 변경률이 일정 값 이하인 경우에는, 갱신하지 않고 대기할 수 있다. 이에 따라, 처리 속도 및 저장공간 등을 개선할 수 있다.
한편, 메모리(180)는 제어부(110)의 동작 및 각 구성 요소의 기능 실행을 위한 프로그램 및 상기 프로그램에 의해 이용되는 데이터베이스를 포함할 수 있으며, 에뮬레이션 처리부(130)에서 웹 페이지의 에뮬레이션을 위한 휘발성 메모리를 포함할 수 있다. 메모리(180) 저장되는 정보로는 접속 정보, 구조 정보, 텍스트 정보, 연관 정보, 시멘틱 컨텍스트 정보, 인덱싱 정보, 또는 모니터링 등이 예시될 수 있다.
도 3은 본 발명의 실시 예에 따른 웹 사이트의 정보 수집 방법을 설명하기 위한 흐름도이다.
도 3을 참조하면, 본 발명의 실시 예에 따른 정보 수집 장치(100)는, 접속 정보 획득부(110)를 통해 접속 정보를 획득한다(S101).
그리고, 정보 수집 장치(100)는 에뮬레이션 처리부(130)를 통해 상기 접속 정보에 대응하는 웹 페이지를 에뮬레이션한다(S103).
그리고, 정보 수집 장치(100)는 구조 정보 획득부(140)를 통해 상기 에뮬레이션된 웹 페이지의 문서 객체 모델(DOM) 정보로부터 상기 웹 페이지의 구조 정보를 획득한다(S105).
그리고, 정보 수집 장치(100)는 텍스트 정보 획득부(150)를 통해 상기 웹 페이지에 대한 텍스트 정보를 획득한다(S107).
이후, 정보 수집 장치(100)는, 연관 정보 처리부(160)를 통해 상기 획득된 구조 정보 및 상기 텍스트 정보에 기초하여, 웹 페이지에 대한 사용성 분석을 가능하게 하는 시멘틱 컨텍스트 정보를 생성한다(S109).
그리고, 정보 수집 장치(100)는 인덱싱부(170)를 통해 상기 시멘틱 컨텍스트 정보를 상기 접속 정보에 대응하여 인덱싱한다(S111).
이후, 정보 수집 장치(100)는 인덱싱부(170)를 통해 상기 인덱싱된 시멘틱 컨텍스트 정보를 후처리 엔진(200)으로 제공한다(S113).
한편, 정보 수집 장치(100)는 모니터링부(190)를 통해 상기 인덱싱부(170)에서 인덱싱된 웹 페이지를 모니터링하고(S115), 변동률이 일정 값 이상인 경우에는 상기 S103 단계부터의 컨텍스트 정보 갱신 프로세스를 다시 수행하도록 제어부(110)에 요청한다(S115).
도 4는 본 발명의 실시 예에 따른 구조 정보를 예시하기 위한 도면이다.
도 4에 도시된 바와 같이, 본 발명의 실시 예에 따른 구조 정보는 문서 객체 모델(DOM) 정보를 포함할 수 있다. 문서 객체 모델 정보는 HTML의 마크업 언어로부터 생성되는 트리 구조의 데이터를 포함할 수 있으며, 각각의 태그에 따른 단계별 메뉴 구조 정보 및 전체 웹 사이트 동작에 대한 구조 정보를 포함할 수 있다.
이에 따라, 정보 수집 장치(100)는 텍스트 정보와 함께 상기 구조 정보를 인덱싱하고, 상호 매칭하여 보다 정확도가 향상된 웹 서비스 인덱싱을 처리할 수 있다.
도 5는 본 발명의 실시 예에 따라 추출되는 구조 정보 및 시멘틱 컨텍스트 정보를 설명하기 위한 도면이다.
도 5는 쇼핑몰 웹 사이트(300)에서 수집되는 정보를 설명하기 위한 것으로, 도 5를 참조하면, 정보 수집 장치(100)는 도 5의 웹 사이트(300)로부터 일반적인 텍스트 정보를 추출할 뿐만 아니라, 구조 정보에 기반한 기능 및 인터렉션 정보를 함께 인덱싱할 수 있다. 구조 정보는 기본적으로, GNB(글로벌 네비게이션 정보), 단계별 메뉴 정보, 제목, 헤더, 메인 및 푸터(FOOTER) 정보를 포함할 수 있다.
그리고, 상기 구조 정보 렌더링에 따라 정보 수집 장치(100)는 브라우저상에서의 웹 사이트(300)에 대한 인터렉션(INTERACTION) 정보를 인덱싱할 수 있고, 예를 들어, 인터렉션 정보는 제스처 정보와 같은 기능 정보 또는 형태의 이동 정보 등을 포함할 수 있다. 또한, 정보 수집 장치(100)는 상기 렌더링된 정보로부터 CSS 정보의 스타일 정보를 획득할 수 있으며, 각 구조 정보에 대한 크기, 색상, 레이아웃 정보를 수집할 수 있다.
예를 들어, TOYS(301)을 주요 키워드로 하여 인덱싱이 수행되는 경우, 기존의 키워드 분석에서는 TOY의 의미 또는 키워드 TOY에 대한 주변 태그나 텍스트 정보만을 인덱싱한다면, 본 발명이 실시 예에 따른 시멘틱 컨텍스트 정보는 상기 텍스트 분석 정보와 함께, 상기 TOY(301)가 메뉴 선택 인터렉션 기능을 갖는지 여부와 함께, 전체 페이지 구조상 단계 위치 정보, TOY 메뉴에 대한 디자인 정보(크기 정보, 색상 정보, 레이아웃 정보), 기능 정보(제스처 등), 이동 정보(형태변화 등)를 포함하는 사용자 경험 기반의 컨텍스트 정보를 포함하게 된다.
이와 같이, 본 발명의 실시 예에 따르면, 에뮬레이션된 웹 페이지로부터 웹 사이트의 구조 정보를 추출할 수 있고, 상기 구조 정보를 응용하여, 실제 사용자의 플랫폼 서비스 이용 측면에서의 정보를 제공하는 다양한 후처리 엔진에 유용한 정보를 제공할 수 있다.
또한, 본 발명의 실시 예에 따르면, 구조 정보와 연관하여 텍스트 정보를 분석함에 따라 기존 대비 정확도가 향상된 시멘틱 컨텍스트 정보를 획득할 수 있다.
이에 따라, 본 발명은 실제 사용자에게 보여지는 측면에서의 사용성 정보 및 그 검증을 위한 웹 사이트 플랫폼의 구조 정보를 효율적으로 수집할 수 있고, 이를 텍스트 정보와 연동하여, 웹 플랫폼 서비스에 대한 분류 및 후처리 정확도를 함께 향상시킬 수 있는 정보 수집 장치 및 이를 이용한 웹 사이트의 정보 수집 방법을 제공할 수 있다.
상술한 본 발명에 따른 방법은 컴퓨터에서 실행되기 위한 프로그램으로 제작되어 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있으며, 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있다.
컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상기 방법을 구현하기 위한 기능적인(function) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형 실시가 가능한 것은 물론이고, 이러한 변형 실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.

Claims (14)

  1. 정보 수집 장치를 이용한 웹 사이트의 정보 수집 방법에 있어서,
    정보를 수집할 웹 사이트에 접속하기 위한 접속 정보를 획득하는 단계;
    상기 접속 정보에 대응하는 웹 페이지를 에뮬레이션하는 단계;
    상기 에뮬레이션된 웹 페이지의 렌더링 정보로부터, 상기 웹 페이지의 구조 정보를 획득하는 단계;
    상기 웹 페이지 또는 상기 렌더링 정보로부터 텍스트 정보를 획득하는 단계;
    상기 텍스트 정보로부터 주요 키워드를 추출하고, 상기 구조 정보와 상기 주요 키워드에 대응하는 연관 정보를 매칭하여 시멘틱 컨텍스트 정보를 생성하는 단계; 및
    상기 시멘틱 컨텍스트 정보를 상기 접속 정보에 대응하는 웹 사이트의 식별 정보에 따라 인덱싱하는 단계;를 포함하고,
    상기 인덱싱하는 단계는 상기 시멘틱 컨텍스트 정보를 이용하여 상기 구조 정보의 디자인 정보와 매칭되는 사용자 경험 기반의 기능 정보 및 이동 정보를 포함하는 인터렉션 정보를 인덱싱하는 단계를 포함하는
    웹 사이트의 정보 수집 방법.
  2. 제1항에 있어서,
    상기 에뮬레이션하는 단계는,
    상기 웹 페이지를 브라우저 동작 환경에 따라 메모리상에 렌더링하는 단계를 포함하는
    웹 사이트의 정보 수집 방법.
  3. 제2항에 있어서,
    상기 구조 정보를 획득하는 단계는,
    상기 메모리상의 렌더링 정보로부터 상기 구조 정보에 대응하는 하나 이상의 문서 객체 모델 엘리먼트를 호출하는 단계를 포함하는
    웹 사이트의 정보 수집 방법.
  4. 제1항에 있어서,
    상기 구조 정보를 획득하는 단계는,
    상기 렌더링 정보로부터 미리 설정된 로직 패턴에 매칭되는 정보를 파싱하는 단계; 및
    상기 파싱된 정보로부터 상기 구조 정보를 생성하는 단계를 포함하는
    웹 사이트의 정보 수집 방법.
  5. 제1항에 있어서,
    상기 구조 정보는 상기 웹 페이지의 렌더링 정보로부터 추출되는 상기 웹 사이트의 GNB(global navigation bar) 정보를 포함하는
    웹 사이트의 정보 수집 방법.
  6. 제1항에 있어서,
    상기 구조 정보는 상기 웹 페이지의 렌더링 정보로부터 추출되는 단계별 메뉴 정보, 메인(MAIN) 정보, 헤더(HEADER) 정보, 푸터(FOOTER) 정보 및 이들의 연결 관계 정보를 포함하는
    웹 사이트의 정보 수집 방법.
  7. 삭제
  8. 웹 사이트의 정보를 수집하는 정보 수집 장치에 있어서,
    수집할 웹 사이트에 접속하기 위한 접속 정보를 획득하는 접속 정보 획득부;
    상기 접속 정보에 대응하는 웹 페이지를 에뮬레이션하는 에뮬레이션 처리부;
    상기 에뮬레이션된 웹 페이지의 렌더링 정보로부터, 상기 웹 페이지의 구조 정보를 획득하는 구조 정보 획득부;
    상기 웹 페이지 또는 상기 렌더링 정보로부터 텍스트 정보를 추출하는 텍스트 정보 획득부;
    상기 텍스트 정보로부터 주요 키워드를 추출하고, 상기 구조 정보와 상기 주요 키워드에 대응하는 연관 정보를 매칭하여 시멘틱 컨텍스트 정보를 생성하는 연관 정보 처리부; 및
    상기 시멘틱 컨텍스트 정보를 상기 접속 정보에 대응하는 웹 사이트의 식별 정보에 따라 인덱싱하는 인덱싱부;를 포함하고,
    상기 인덱싱부는 상기 시멘틱 컨텍스트 정보를 이용하여 상기 구조 정보의 디자인 정보와 매칭되는 사용자 경험 기반의 기능 정보 및 이동 정보를 포함하는 인터렉션 정보를 인덱싱하는
    웹 사이트의 정보 수집 장치.
  9. 제8항에 있어서,
    상기 에뮬레이션 처리부는
    상기 웹 페이지를 브라우저 동작 환경에 따라 메모리상에 렌더링하고,
    상기 구조 정보 획득부는 상기 메모리상의 렌더링 정보로부터 상기 구조 정보에 대응하는 하나 이상의 문서 객체 모델 엘리먼트를 호출하는
    웹 사이트의 정보 수집 장치.
  10. 제8항에 있어서,
    상기 구조 정보 획득부는,
    상기 렌더링 정보로부터 미리 설정된 로직 패턴에 매칭되는 정보를 파싱하고, 상기 파싱된 정보로부터 상기 구조 정보를 생성하는
    웹 사이트의 정보 수집 장치.
  11. 삭제
  12. 제8항에 있어서,
    상기 인덱싱부는 상기 시멘틱 컨텍스트 정보를 상기 웹 사이트에 대해 인덱싱하고, 상기 인덱싱된 시멘틱 컨텍스트 정보를 후처리 엔진으로 제공하는
    웹 사이트의 정보 수집 장치.
  13. 제8항에 있어서,
    웹 사이트로부터 상기 인덱싱의 정보에 대응되는 갱신 정보를 모니터링하는 모니터링부를 더 포함하는
    웹 사이트의 정보 수집 장치.
  14. 제1항 내지 제6항 중 어느 한 항에 기재된 방법을 컴퓨터에서 실행시키기 위한 컴퓨터가 읽을 수 있는 기록 매체에 저장된 컴퓨터 프로그램.
KR1020160001435A 2016-01-06 2016-01-06 정보 수집 장치 및 이를 이용한 웹 사이트의 정보 수집 방법 KR101722157B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160001435A KR101722157B1 (ko) 2016-01-06 2016-01-06 정보 수집 장치 및 이를 이용한 웹 사이트의 정보 수집 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160001435A KR101722157B1 (ko) 2016-01-06 2016-01-06 정보 수집 장치 및 이를 이용한 웹 사이트의 정보 수집 방법

Publications (1)

Publication Number Publication Date
KR101722157B1 true KR101722157B1 (ko) 2017-04-03

Family

ID=58589349

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160001435A KR101722157B1 (ko) 2016-01-06 2016-01-06 정보 수집 장치 및 이를 이용한 웹 사이트의 정보 수집 방법

Country Status (1)

Country Link
KR (1) KR101722157B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120122959A (ko) * 2011-04-29 2012-11-07 (주)나모인터랙티브 웹 컨텐츠 수집방법 및 수집장치, 그 기록매체
KR20130094935A (ko) * 2012-02-17 2013-08-27 정영교 웹 스크래핑을 이용한 마인드맵 생성 방법, 장치 및 컴퓨터로 판독 가능한 기록매체
JP2014523016A (ja) * 2011-06-15 2014-09-08 アリババ・グループ・ホールディング・リミテッド ウェブページ情報を抽出する方法およびシステム
KR20150085716A (ko) * 2014-01-16 2015-07-24 이주현 웹 스크래핑 추출 데이터 설정 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120122959A (ko) * 2011-04-29 2012-11-07 (주)나모인터랙티브 웹 컨텐츠 수집방법 및 수집장치, 그 기록매체
JP2014523016A (ja) * 2011-06-15 2014-09-08 アリババ・グループ・ホールディング・リミテッド ウェブページ情報を抽出する方法およびシステム
KR20130094935A (ko) * 2012-02-17 2013-08-27 정영교 웹 스크래핑을 이용한 마인드맵 생성 방법, 장치 및 컴퓨터로 판독 가능한 기록매체
KR20150085716A (ko) * 2014-01-16 2015-07-24 이주현 웹 스크래핑 추출 데이터 설정 방법

Similar Documents

Publication Publication Date Title
CN113127771B (zh) 应用埋点方法、装置、计算设备和系统
CN101452453B (zh) 一种输入法网址导航的方法和一种输入法系统
US8903800B2 (en) System and method for indexing food providers and use of the index in search engines
WO2018000998A1 (zh) 界面生成方法、装置和系统
CN108399150B (zh) 文本处理方法、装置、计算机设备和存储介质
US20130326333A1 (en) Mobile Content Management System
KR20080053293A (ko) 클라이언트 스크립트 웹 페이지에 대한 서버측 초기 콘텐츠렌더링
CN101971172A (zh) 移动站点地图
CN109194714B (zh) 一种文案推送方法、装置、终端设备及存储介质
JP2019074843A (ja) 情報提供装置、情報提供方法、およびプログラム
CN102065114A (zh) 一种移动终端访问网页的方法及装置
CN107391528B (zh) 前端组件依赖信息搜索方法及设备
CN103177096B (zh) 基于文本属性的页面元素定位方法及设备
CN110688118A (zh) 一种网页优化方法及装置
CN103838862A (zh) 一种视频搜索的方法、装置及终端
CN104809173A (zh) 一种搜索结果的处理方法和装置
CN114398138B (zh) 界面生成方法、装置、计算机设备和存储介质
CN109240664A (zh) 一种采集用户行为信息的方法及终端
KR102214990B1 (ko) 북마크관리 및 정보검색 서비스 제공시스템 및 이를 이용한 북마크관리 및 정보검색 서비스 제공방법
CN113127776A (zh) 面包屑路径生成方法、装置及终端设备
CN113268695B (zh) 数据埋点处理方法、装置及相关设备
WO2024164589A9 (zh) 信息显示方法、装置、电子设备、计算机可读存储介质及计算机程序产品
Upadhyaya et al. Extracting restful services from web applications
CN104778232A (zh) 一种基于长查询的搜索结果的优化方法和装置
KR101722157B1 (ko) 정보 수집 장치 및 이를 이용한 웹 사이트의 정보 수집 방법

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20191112

Year of fee payment: 4