WO2022097891A1 - 동일 구조의 데이터를 추출하는 방법 및 그를 이용한 장치 - Google Patents

동일 구조의 데이터를 추출하는 방법 및 그를 이용한 장치 Download PDF

Info

Publication number
WO2022097891A1
WO2022097891A1 PCT/KR2021/011847 KR2021011847W WO2022097891A1 WO 2022097891 A1 WO2022097891 A1 WO 2022097891A1 KR 2021011847 W KR2021011847 W KR 2021011847W WO 2022097891 A1 WO2022097891 A1 WO 2022097891A1
Authority
WO
WIPO (PCT)
Prior art keywords
tag
attribute
specific
text
item
Prior art date
Application number
PCT/KR2021/011847
Other languages
English (en)
French (fr)
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 EP21889356.8A priority Critical patent/EP4089550A4/en
Publication of WO2022097891A1 publication Critical patent/WO2022097891A1/ko
Priority to US17/889,332 priority patent/US20220398286A1/en

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/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/0486Drag-and-drop
    • 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/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2291User-Defined Types; Storage management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting

Definitions

  • the processor 120 of the computing device 100 may obtain an address of a site for collecting objects of the same structure.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Library & Information Science (AREA)
  • Probability & Statistics with Applications (AREA)

Abstract

본 발명에 따르면, 동일 구조의 데이터를 추출하는 방법에 있어서, 컴퓨팅 장치가, 검색 대상에 해당하는 객체의 속성 값에 해당하는 텍스트 정보를 획득하는 단계; 상기 본문 범위에 포함된 복수의 태그 각각을 검색하여, 특정 태그 집합체에 포함되어 있고 상기 텍스트 정보에 해당하는 특정 태그를 확인하는 단계; 상기 특정 태그가 다른 태그 집합체에 형제 태그를 가지고 있지 않은 경우, i) 특정 태그 집합체에 포함되어 있고, ii) 특정 태그의 상위 태그에 해당하며, iii) 다른 태그 집합체에 형제 태그를 가지고 있는 특정 항목 태그를 검색하는 단계; 및 특정 항목 태그와 형제 태그에 해당하는 항목 태그를 최상위 태그로 포함하면서 본문 범위에 포함된 복수의 소정 태그 집합체를 획득하고, 이에 대응하는 복수의 소정 객체를 디스플레이하는 단계를 포함하는 방법을 제시한다.

Description

동일 구조의 데이터를 추출하는 방법 및 그를 이용한 장치
본 발명은 동일 구조의 데이터를 추출하는 방법에 있어서, 웹 사이트에 복수 개의 객체 및 상기 복수 개의 객체 각각에 포함된 속성 값이 디스플레이되어 있는 상태에서, 상기 복수 개의 객체 각각에 대응하는 복수 개의 태그 집합체가 본문 범위에 포함된 상태로 웹 언어로 표현되어 상기 웹 사이트를 이루고 있다고 할 때, 컴퓨팅 장치가, 검색 대상에 해당하는 객체의 속성 값에 해당하는 텍스트 정보를 획득하는 단계; 상기 컴퓨팅 장치가, 상기 본문 범위에 포함된 복수의 태그 각각을 검색하여, 특정 태그 집합체에 포함되어 있고 상기 텍스트 정보에 해당하는 특정 태그를 확인하는 단계; 상기 특정 태그가 다른 태그 집합체에 형제 태그를 가지고 있지 않은 경우, 상기 컴퓨팅 장치가, i) 상기 특정 태그 집합체에 포함되어 있고, ii) 상기 특정 태그의 상위 태그에 해당하며, iii) 상기 다른 태그 집합체에 형제 태그를 가지고 있는 특정 항목 태그를 검색하는 단계; 및 상기 컴퓨팅 장치가, 상기 특정 항목 태그와 형제 태그에 해당하는 항목 태그를 최상위 태그로 포함하면서 상기 본문 범위에 포함된 복수의 소정 태그 집합체를 획득하고, 이에 대응하는 복수의 소정 객체를 디스플레이하는 단계를 포함하는 방법에 관한 것이다.
웹 페이지 정보를 수집하기 위한 소프트웨어를 크롤러(스파이더 또는 봇(Bot))라고 하며, 구글 또는 네이버 등의 검색엔진은 크롤러를 이용하여 전 세계의 웹사이트를 수집하고 저장하고 있다.
크롤러 등을 포함한 웹 상에서 정보를 수집하는 소프트웨어는 다양하며 웹 페이지 상에서 동일 데이터를 찾는 것은 이미 많이 이용되고 있다. 사용자들은 자신들이 원하는 데이터를 보다 빠르고 정확하게 수집하고자 하고 있으며, 획득한 데이터 일부(ex 이름, 카테고리 등)만을 이용하여 쇼핑몰, 온라인 서점 등에서 판매하는 아이템 전체에 대한 데이터를 추출하여 이를 이용하고자 하는 수요 역시 늘어나고 있다.
이에 따라, 본 발명자는 동일 구조의 데이터를 추출하는 방법 및 그를 이용한 장치를 제안하고자 한다.
본 발명은 상술한 문제점을 모두 해결하는 것을 목적으로 한다.
본 발명은 데이터 일부만을 획득한 후 이에 대한 전체 데이터를 검색하도록 하고, 웹 상에서 동일 구조의 데이터를 획득할 수 있도록 하여 사용자들이 원하는 데이터를 획득하도록 지원하는 것을 다른 목적으로 한다.
또한, 본 발명은 동일 구조인지 여부를 확률적으로 판단하여 보다 정확한 데이터를 수집가능한 것을 또 다른 목적으로 한다.
상기한 바와 같은 본 발명의 목적을 달성하고, 후술하는 본 발명의 특징적인 효과를 실현하기 위한, 본 발명의 특징적인 구성은 하기와 같다.
본 발명의 일 태양에 따르면, 동일 구조의 데이터를 추출하는 방법에 있어서, 웹 사이트에 복수 개의 객체 및 상기 복수 개의 객체 각각에 포함된 속성 값이 디스플레이되어 있는 상태에서, 상기 복수 개의 객체 각각에 대응하는 복수 개의 태그 집합체가 본문 범위에 포함된 상태로 웹 언어로 표현되어 상기 웹 사이트를 이루고 있다고 할 때, 컴퓨팅 장치가, 검색 대상에 해당하는 객체의 속성 값에 해당하는 텍스트 정보를 획득하는 단계; 상기 컴퓨팅 장치가, 상기 본문 범위에 포함된 복수의 태그 각각을 검색하여, 특정 태그 집합체에 포함되어 있고 상기 텍스트 정보에 해당하는 특정 태그를 확인하는 단계; 상기 특정 태그가 다른 태그 집합체에 형제 태그를 가지고 있지 않은 경우, 상기 컴퓨팅 장치가, i) 상기 특정 태그 집합체에 포함되어 있고, ii) 상기 특정 태그의 상위 태그에 해당하며, iii) 상기 다른 태그 집합체에 형제 태그를 가지고 있는 특정 항목 태그를 검색하는 단계; 및 상기 컴퓨팅 장치가, 상기 특정 항목 태그와 형제 태그에 해당하는 항목 태그를 최상위 태그로 포함하면서 상기 본문 범위에 포함된 복수의 소정 태그 집합체를 획득하고, 이에 대응하는 복수의 소정 객체를 디스플레이하는 단계를 포함하는 방법이 제공된다.
또한, 본 발명의 다른 태양에 따르면, 동일 구조의 데이터를 추출하는 장치에 있어서, 웹 사이트에 복수 개의 객체 및 상기 복수 개의 객체 각각에 포함된 속성 값이 디스플레이되어 있는 상태에서, 상기 복수 개의 객체 각각에 대응하는 복수 개의 태그 집합체가 본문 범위에 포함된 상태로 웹 언어로 표현되어 상기 웹 사이트를 이루고 있다고 할 때, 상기 웹 사이트로부터 정보를 수신하는 통신부; I) 검색 대상에 해당하는 객체의 속성 값에 해당하는 텍스트 정보를 획득하고, II) 상기 본문 범위에 포함된 복수의 태그 각각을 검색하여, 특정 태그 집합체에 포함되어 있고 상기 텍스트 정보에 해당하는 특정 태그를 확인하고, III) 상기 특정 태그가 다른 태그 집합체에 형제 태그를 가지고 있지 않은 경우, i) 상기 특정 태그 집합체에 포함되어 있고, ii) 상기 특정 태그의 상위 태그에 해당하며, iii) 상기 다른 태그 집합체에 형제 태그를 가지고 있는 특정 항목 태그를 검색하며, IV) 상기 특정 항목 태그와 형제 태그에 해당하는 항목 태그를 최상위 태그로 포함하면서 상기 본문 범위에 포함된 복수의 소정 태그 집합체를 획득하고, 이에 대응하는 복수의 소정 객체를 디스플레이하는 프로세서를 포함하는 컴퓨팅 장치가 제공된다.
본 발명에 의하면, 다음과 같은 효과가 있다.
본 발명은 데이터 일부만을 획득한 후 이에 대한 전체 데이터를 검색하도록 하고, 웹 상에서 동일 구조의 데이터를 획득할 수 있도록 하여 사용자들이 원하는 데이터를 획득하도록 지원하는 효과가 있다.
또한, 본 발명은 동일 구조인지 여부를 확률적으로 판단하여 보다 정확한 데이터를 수집가능한 효과가 있다.
도 1은 본 발명의 일 실시예에 따라 동일 구조의 데이터를 획득하는 모습을 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따라 컴퓨팅 장치의 개략적인 구성을 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따라 웹 페이지를 표현하는 웹 언어를 나타내는 도면이다.
도 4는 본 발명의 일 실시예에 따라 동일 구조의 데이터를 추출하기 까지의 과정을 나타내는 도면이다.
도 5는 본 발명의 일 실시예에 따라 특정 태그를 찾는 과정을 나타내는 도면이다.
도 6은 본 발명의 일 실시예에 따라 복수의 태그 집합체를 웹 언어로서 나타내는 도면이다.
도 7은 본 발명의 일 실시예에 따라 복수의 태그 집합체 각각에 대한 동일성을 확률적으로 나타내는 모습을 나타내는 도면이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따라 동일 구조의 데이터를 획득하는 모습을 나타내는 도면이다.
도 1의 좌측 그림의 경우, 온라인 서점에서 운영하는 사이트의 웹 페이지를 나타내고 있다. 본 발명에 의할 때, 해당 웹 페이지에서 디스플레이되는 서적의 개수 및 종류를 확인하고 싶은 경우, 사용자는 어느 하나의 서적의 제목 등의 텍스트만 기입하면 된다.
구체적으로, 사용자가 어느 서적(ex 제목: 슬곰이네 강아지 식탁)을 선택하고 제목을 입력한 경우, 도 1의 우측 그림과 같이 본 발명의 프로세스에 의해 해당 서적과 동일한 구조의 서적들이 추출되어 디스플레이될 수 있다. 도 1에서는 서적들을 예시로 하였지만, 쇼핑 물품, 부동산 매물 등 다양한 아이템이 본 발명의 프로세스를 통해 이용될 수 있다.
이하에서는 본 발명의 프로세스에 대해서 자세히 살펴보도록 하겠다.
도 2는 본 발명의 일 실시예에 따라 컴퓨팅 장치의 개략적인 구성을 나타내는 도면이다.
도 2에 도시된 바와 같이, 본 발명의 컴퓨팅 장치(100)는 통신부(110), 프로세서(120)를 포함할 수 있다. 도 1에서는 나타나지 않았지만, 데이터베이스 역시 상기 컴퓨팅 장치(100)에 포함될 수 있다.
상기 컴퓨팅 장치(100)는 통신을 수행하고 디스플레이 기능을 포함하는 디지털 기기로서, 데스크탑 컴퓨터, 노트북 컴퓨터, 워크스테이션, PDA, 웹 패드, 이동 전화기 등과 같이 메모리 수단을 구비하고 마이크로 프로세서를 탑재하여 연산 능력을 갖춘 디지털 기기라면 얼마든지 본 발명에 따른 컴퓨팅 장치(100)로서 채택될 수 있다. 또한, 상기 컴퓨팅 장치(100)는 다른 단말들과 연동되는 일종의 서버와 같은 역할을 수행할 수도 있다.
컴퓨팅 장치(100)의 통신부(110)는 다양한 통신 기술로 구현될 수 있다. 즉, 와이파이(WIFI), WCDMA(Wideband CDMA), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), HSPA(High Speed Packet Access), 모바일 와이맥스(Mobile WiMAX), 와이브로(WiBro), LTE(Long Term Evolution), 블루투스(bluetooth), 적외선 통신(IrDA, infrared data association), NFC(Near Field Communication), 지그비(Zigbee), 무선랜 기술 등이 적용될 수 있다. 또한, 인터넷과 연결되어 서비스를 제공하는 경우 인터넷에서 정보전송을 위한 표준 프로토콜인 TCP/IP를 따를 수 있다.
데이터베이스는 수집된 데이터를 저장할 수 있고 통신부(110)에 의해 접근이 가능할 수 있을 것이다.
도 3은 본 발명의 일 실시예에 따라 웹 페이지를 표현하는 웹 언어를 나타내는 도면이다.
우선, 웹 사이트에 복수 개의 객체 및 복수 개의 객체 각각에 포함된 속성 값이 디스플레이되어 있다고 설정할 수 있다. 도 1에서 볼 수 있듯이, 어느 하나의 웹 페이지에는 복수 개의 객체(ex 서적)가 존재할 수 있고, 해당 객체 각각에 포함된 속성 값(ex 제목, 지은이, 요약 등)이 존재할 수 있다.
물론, 도 1과 달리 본 발명의 웹 사이트는 쇼핑몰 사이트, 부동산 사이트, 음식점 사이트 등 다양할 수 있다.
상기와 같은 웹 사이트는 표현하는 언어로 웹 언어가 존재할 수 있으며, 일반적으로 HTML(Hypertext Markup Language)이 이용될 수 있을 것이다. 경우에 따라서는, 다른 언어가 이용될 수도 있다.
도 3은 본 발명에서 이용되는 웹 언어를 나타낸 것으로, 이에 대해서 살펴보도록 하겠다.
도 1에서 볼 수 있듯이, 하나의 웹 페이지 상에 복수 개의 객체(ex 서적, 쇼핑 아이템 등)가 존재할 수 있다. 상기 객체가 의미하는 대상은 이미지, 텍스트, 영상 또는 이들의 조합 등 다양할 수 있다. 이때, 상기 복수 개의 객체 각각은 복수 개의 태그 집합체와 대응될 수 있으며, 디스플레이되는 객체의 속성 값들은 태그 집합체 내 각종 태그와 대응될 수 있다.
도 3을 살펴보면, 본문 범위(body 태그 하위 태그) 이내에 복수 개의 태그 집합체가 포함될 수 있다. 이때, 상기 태그 집합체 각각은 웹 페이지에 디스플레이되는 객체를 나타낼 수 있다.
상기 태그 집합체 각각은 항목 태그 및 속성 태그를 포함할 수 있다. 항목 태그는 속성 태그의 상위 태그에 해당하고, 다른 태그 집합체의 항목 태그와 형제 태그에 해당할 수 있다. 도 3에서의 태그 집합체1의 book 태그(category = "children")와 태그 집합체 2의 book 태그(category = "web")는 서로 형제 태그에 해당할 수 있는 것이다.
태그 집합체 1의 항목 태그 아래에는 title 태그, author 태그, year 태그, price 태그 등의 속성 태그와 속성 값(ex Harry Potter, J K. Rowling, 2005, 29.99 등)을 포함하고 있는데, 이들은 태그 집합체 2의 속성 태그와는 상위 태그(부모 태그)가 상이하므로 형제 관계에 있지는 않을 것이다.
참고로, 도 3에서는 각 태그 집합체에 하나의 레벨의 속성 태그만을 나타내고 있으나, 경우에 따라서는 그 아래에 다른 하위 레벨의 속성 태그, 또 하위 레벨의 속성 태그 등이 부모 관계를 유지하면서 존재할 수도 있다.
도 4는 본 발명의 일 실시예에 따라 동일 구조의 데이터를 추출하기 까지의 과정을 나타내는 도면이다.
우선, 컴퓨팅 장치(100)의 프로세서(120)는 동일 구조의 객체를 수집할 사이트에 대한 주소를 획득할 수 있다.
또한, 컴퓨팅 장치(100)의 프로세서(120)는 검색 대상에 해당하는 객체의 속성 값에 해당하는 텍스트 정보를 획득(S210)할 수 있다.
도 1에서 볼 수 있듯이, 본 발명의 일 실시예로서 객체는 서적에 해당하며, 이에 대한 속성 값은 서적의 제목, 지은이, 출판날짜 등에 해당할 수 있다.
프로세서(120)는 상기 객체의 속성 값에 해당하는 텍스트 정보를 사용자로부터 입력받거나, 사용자가 드래그한 텍스트를 상기 텍스트 정보로서 획득할 수 있다. 즉, 사용자가 서적의 제목 '슬곰이네 강아지 식탁'을 직접 입력하거나, 웹 페이지 상에서 서적의 제목 '슬곰이네 강아지 식탁'을 드래그할 수 있고, 본 발명의 컴퓨팅 장치(100)는 이를 감지할 수 있는 것이다.
프로세서(120)가 획득한 상기 텍스트 정보(ex 서적의 제목)는 검색 대상에 해당하며, 본문 범위(body 태그 하위 태그)의 모든 태그(각종 항목 태그, 각종 속성 태그 등)가 상기 검색대상 태그가 될 수 있다.
다음으로, 프로세서(120)는 본문 범위에 포함된 복수의 태그 각각을 검색하여, 특정 태그 집합체에 포함되어 있고 상기 텍스트 정보에 해당하는 특정 태그를 확인(S220)할 수 있다.
도 5는 본 발명의 일 실시예에 따라 특정 태그를 찾는 과정을 나타내는 도면이다. 아래에서는 도 5와 함께 특정 태그(텍스트 정보에 해당)를 찾는 프로세스에 대해서 살펴보도록 하겠다.
전술한 바와 같이, 복수의 태그 집합체 각각이 항목 태그 및 속성 태그를 포함하고, 상기 속성 태그는 항목 태그의 하위 태그(자식 태그)에 해당하며, 복수의 태그 집합체 각각의 항목 태그는 서로 형제 태그 관계에 해당할 수 있다.
설명의 편의상, 도 3과 같이 제1 태그 집합체 및 제2 태그 집합체가 본문 범위(body 태그 하위 태그)에 포함되어 있고, 제1 태그 집합체가 제1 항목 태그, 제1-1 속성 태그 및 제1-2 속성 태그를 포함하고, 제2 태그 집합체가 제2 항목 태그, 제2-1 속성 태그 및 제2-2 속성 태그를 포함한다고 가정할 수 있다.
이때, 프로세서(120)는 제1 항목 태그, 제1-1 속성 태그, 제1-2 속성 태그, 제2 항목 태그, 제2-1 속성 태그, 제2-2 속성 태그 순으로 상기 텍스트 정보에 해당하는 특정 태그(검색결과태그)를 확인할 수 있다.
즉, 프로세서(120)는 웹 언어 상에서 body 태그 이하의 가장 상위 태그에서 자식 태그로 점점 깊게 찾아 들어가 검색을 시도할 수 있다. 어느 하나의 태그의 모든 자식을 검색하였다면 이후 해당 태그의 형제 태그(sibling)들을 동일하게 검색해 나갈 수 있다.
이와 관련하여 도 5를 살펴보면, 프로세서(120)는 body 태그 이하의 가장 상위 태그인 bookstore 태그를 먼저 탐색하고, 다음으로 태그 집합체 1에 해당하는 book 태그(category = "children") 및 그 이하의 속성 태그(title, author, year, price)를 탐색하고, 태그 집합체 2에 해당하는 book 태그(category = "web") 및 그 이하의 속성 태그(title, author, year, price)를 순차적으로 탐색할 수 있다.
입력받은 텍스트 정보가 2개의 텍스트 그룹으로 구분되어 있는 경우, 프로세서(120)는 본 발명의 일 실시예에 따라 2개의 텍스트 그룹 각각에 대해서 body 태그 이하의 모든 태그와 각각 비교할 수 있다.
설명의 편의상 텍스트 정보가 적어도 제1 그룹 및 제2 그룹을 포함하고 있다고 설정할 수 있다. 예를 들어, 프로세서(120)가 입력받은 텍스트 정보가 'Harry Potter'라면 제1 그룹은 'Harry' 제2 그룹은 'Potter'라고 설정할 수 있는 것이다.
컴퓨팅 장치(100)의 프로세서(120)는 상기 제1 그룹의 텍스트('Harry') 및 제2 그룹의 텍스트('Potter') 각각을 최상위 태그(bookstore)의 텍스트('Harry Potter J K. Rowling 2005 29.29 Learning XML Erik T. Ray 2003 39.95'), 제1 항목 태그(book[1])의 텍스트('Harry Potter J K. Rowling 2005 29.29'), 제1-1 속성 태그(title)의 텍스트('Harry Potter'), 제1-2 속성 태그(author)의 텍스트('J K. Rowling'), 제1-3 속성 태그(year)의 텍스트('2005'), 제1-4 속성 태그(price)의 텍스트('29.29') 순으로 비교하여 일치여부를 판단할 수 있다.
또한, 프로세서(120)는 상기 판단에 이어서 상기 제1 그룹의 텍스트('Harry') 및 제2 그룹의 텍스트('Potter') 각각을 제2 항목 태그(book[2])의 텍스트('Learning XML Erik T. Ray 2003 39.95'), 제2-1 속성 태그(title)의 텍스트('Learning XML'), 제2-2 속성 태그(author)의 텍스트('Erik T.Ray'), 제2-3 속성 태그(year)의 텍스트('2003'), 제2-4 속성 태그(price)의 텍스트('39.95') 순으로 비교하여 일치 여부를 판단할 수 있다.
위와 같이, 검색을 진행한 결과 텍스트 정보('Harry Potter')는 최상위 태그(bookstore)의 텍스트('Harry Potter J K. Rowling 2005 29.29 Learning XML Erik T. Ray 2003 39.95'), 제1 항목 태그(book[1])의 텍스트('Harry Potter J K. Rowling 2005 29.29'), 제1-1 속성 태그(title)의 텍스트('Harry Potter')에 포함되는 것을 확인할 수 있다.
이때, 프로세서(120)는 가장 하위 태그에 우선순위를 두어 검색 결과로 나타낼 수 있다. 이는 가장 정확하게 일치하는 데이터를 포함하고 있는 태그를 찾기 위함이며, 그 결과 상기 제1-1 속성 태그(title)가 입력된 텍스트 정보('Harry Potter')로서 찾고자 하는 특정 태그(검색결과태그)에 해당할 수 있다.
즉, 동일 태그 집합체에 포함된 소정 항목 태그의 텍스트 및 소정 속성 태그의 텍스트가 모두 텍스트 정보를 포함하고 있는 경우, 프로세서(120)는 하위 태그에 해당하는 소정 속성 태그를 특정 태그로서 확인할 수 있는 것이다. 물론, 동일 태그 집합체에 포함되지 않더라도 가장 하위 태그를 본 발명에서 찾고자 하는 특정 태그(검색결과태그)로서 확인할 수 있을 것이다.
프로세서(120)는 상위 레벨의 태그부터 하위 레벨의 태그까지 훑어가며 검색할 수 있다. 이때 검색대상태그(book[1], title 등)의 텍스트를 분리한 배열 개수를 n1, 입력된 텍스트 정보('Harry Potter')를 분리한 배열 개수를 n2라고 할 때, 프로세서(120)는 n1 x n2 횟수만큼 매칭하여 카운팅하며 검색할 수 있을 것이다.
예를 들어, 입력된 텍스트 정보를 제1 항목 태그(book[1])에서 비교한다고 할 때, 제1 항목 태그의 텍스트는 Harry, Potter, J, K., Rowling, 2005, 29.29 등 총 7개의 배열로 구분되며 n1은 7이 될 수 있다. 또한, 입력된 텍스트 정보가 Harry, Potter 등 총 2개의 배열로 구분되므로 n2는 2가 될 수 있다. 따라서, 상기 제1 항목 태그(boo[1])에서의 매칭 카운팅 횟수는 14가 될 수 있을 것이다.
또한, 입력된 텍스트 정보를 제1-1 속성 태그(title)에서 비교한다고 할 때, 제1-1 속성 태그의 텍스트는 Harry, Potter 등 총 2개의 배열로 구분되며 n1은 2가 될 수 있다. 따라서, 제1-1 속성 태그(title)에서의 매칭 카운팅 횟수는 4가 될 수 있을 것이다.
프로세서(120)는 위와 같이 body 태그 하위 모든 태그를 검색대상태그로서 일치 여부를 확인하고, 그 중 매칭하는 태그 중 하위 태그를 입력된 텍스트 정보에 해당하는 특정 태그(검색결과태그)로서 설정할 수 있다.
한편, 경우에 따라서는 프로세서(120)는 검색대상이 되는 입력된 텍스트 정보('Harry Potter')를 2개의 배열 그룹으로 구분하지 않고, 하나의 배열 그룹으로의 검색을 우선적으로 진행할 수도 있다. 즉, 프로세서(120)는 특정 태그를 찾는 과정에서 하나의 배열 그룹인 'Harry Potter'에 대해 가중치를 두고 검색하고, 2개의 배열 그룹인 'Harry' 'Potter'에 대해서 가중치를 낮게 하여 검색을 진행할 수 있는 것이다.
예를 들어, 'Harry' 'Potter'를 각각 구분하여 검색하는 경우, 어느 하나의 태그에서 'Potter Harry'를 포함하고 있는 경우에도 검색이 될 수 있기 때문이다. 따라서, 프로세서(120)는 하나의 배열 그룹인 'Harry Potter'를 구분된 배열 그룹인'Harry''Potter'보다 가중치를 두고 검색할 수 있다.
다음으로, 컴퓨팅 장치(100)의 프로세서(120)는 상기 검색된 특정 태그를 기초로 입력된 텍스트 정보와 동일한 구조를 가지는 데이터를 추출하는 프로세스를 수행할 수 있다.
특정 태그가 다른 태그 집합체에 형제 태그를 가지고 있지 않은 경우, 프로세서(120)는 i) 특정 태그 집합체에 포함되어 있고, ii) 특정 태그의 상위 태그에 해당하며, iii) 상기 다른 태그 집합체에 형제 태그를 가지고 있는 특정 항목 태그를 검색(S230)할 수 있다.
예를 들어, 입력받은 텍스트 정보가 'Harry Potter'라고 할 때, 프로세서(120)는 제1-1 속성 태그(title)를 검색결과 태그로서 확인하였었다. 그러나, 상기 제1-1 속성 태그는 다른 태그 집합체(ex 태그 집합체 2)에 형제 태그를 가지고 있지 않으므로, 입력받은 텍스트 정보에 해당하는 객체와 동일 구조의 데이터를 추출하기 위해서는 다른 태그가 필요하다.
프로세서(120)는 태그 집합체 1(특정 태그 집합체)에 포함되어 있고, 상기 제1-1 속성 태그(특정 태그)의 상위 태그에 해당하며, 다른 태그 집합체(ex 태그 집합체 2)에 형제 태그를 가지고 있는 제1 항목 태그(book[1])을 특정 항목 태그로서 확인할 수 있다.
이와 같이, 다른 태그 집합체에 형제 태그를 가지는 항목 태그를 검색하는 것은 입력된 텍스트 정보에 해당하는 데이터뿐 아니라 동일 구조의 다른 데이터를 찾기 위함이다.
결국, 프로세서(120)는 입력된 텍스트 정보에 기초하여 확인한 특정 태그(검색결과태그)의 상위 태그로 올라가면서 다른 태그 집합체에 형제 태그를 가지는 태그를 찾을 수 있을 것이다.
다음으로, 컴퓨팅 장치(100)의 프로세서(120)는 특정 항목 태그와 형제 태그에 해당하는 항목 태그를 최상위 태그로 포함하면서 상기 본문 범위에 포함된 복수의 소정 태그 집합체를 획득하고, 이에 대응하는 복수의 소정 객체를 디스플레이(S240)할 수 있다.
즉, 프로세서(120)는 제1 항목 태그(book[1])와 형제 태그에 해당하는 항목 태그(ex 제2 항목 태그 등)를 최상위 태그로 포함하면서 본문 범위(book 태그 하위 태그)에 포함된 복수의 소정 태그 집합체(ex 태그 집합체 2 등)를 획득할 수 있고, 이에 대응하는 소정 객체(ex Learning XML 서적)를 디스플레이할 수 있다.
상기 소정 객체는 복수 개에 해당할 수 있고, 본 발명의 프로세서(120)는 해당하는 소정 객체 모두(ex 다른 서적 등)에 대해 디스플레이할 수 있을 것이다.
본 발명에서 추출하는 데이터와 관련 동일 구조에 대해서는 도 6과 함께 살펴보도록 하겠다.
도 6은 본 발명의 일 실시예에 따라 복수의 태그 집합체를 웹 언어로서 나타내는 도면이다.
도 6(a)의 태그 집합체를 입력된 텍스트 정보에 해당하는 데이터(특정 태그 집합체)라고 설정할 수 있고, 도 6(b)의 복수의 태그 집합체에서 상기 특정 태그 집합체와 동일 구조에 해당하는 데이터를 검색할 수 있다.
본 발명에서의 동일 구조는 하위 태그 전체의 태그 이름을 나열하여 비교하였을 때, 매칭하는 데이터를 의미할 수 있다. 도 6을 살펴볼 때, 도 6(a)의 특정 태그 집합체의 하위(속성) 태그는 title, author, year, price 등이 존재하며, 도 6(b)의 복수의 태그 집합체 중에서 두번째 태그 집합체(1.2 book)가 매칭하는 데이터로 확인할 수 있다.
그러나, 위와 같이 하위 태그 전체를 하나씩 확인하여 매칭 여부를 판단하는 것은 비효율적일 수 있으므로, 본 발명에서는 특정 항목 태그와 형제 태그에 해당하는 항목 태그를 포함하는 복수의 소정 태그 집합체를 모두를 추출하고, 이들을 동일 구조의 데이터라고 설정할 수 있다. 또한, 복수의 소정 태그 집합체에 대응하는 복수의 소정 객체를 동일 구조로서 디스플레이할 수 있다.
다만, 이에 대해서 검증이 필요하며, 본 발명의 프로세서(120)는 확률을 이용하여 검증을 수행할 수 있다. 이에 대해서는 아래의 도 7과 함께 살펴보도록 하겠다.
도 7은 본 발명의 일 실시예에 따라 복수의 태그 집합체 각각에 대한 동일성을 확률적으로 나타내는 모습을 나타내는 도면이다.
복수의 소정 태그 집합체 각각에는 적어도 하나 이상의 속성 태그가 포함될 수 있다. 즉, book[1]을 항목 태그로 하는 소정 태그 집합체는 title, author 등을 소정 태그로 포함할 수 있고, book[2]를 항목 태그로 하는 소정 태그 집합체는 year, price 등을 소정 태그로 포함할 수 있는 것이다.
이때, 프로세서(120)는 본문 범위에 포함된 복수의 소정 태그 집합체 중 기설정 개수의 비교용 태그 집합체를 추출할 수 있다. 즉, 본문 범위에 포함된 복수의 소정 태그 집합체(ex 웹 페이지에 디스플레이된 객체와 대응) 모두에 대해 동일성을 판단할 수는 없으므로, 기설정 개수(ex 10개 등)의 비교용 태그 집합체만을 먼저 추출할 수 있는 것이다.
상기 소정 태그 집합체는 전술한 바와 같이 입력된 텍스트 정보에 대응하는 특정 태그 집합체와 형제 관계에 있는 태그 집합체로서, 본문 범위에 포함되어 있는 태그 집합체 모두를 의미할 수 있다.
다음으로, 프로세서(120)는 특정 태그 집합체(검색결과태그가 포함된 태그 집합체)에 포함되어 있는 속성 태그를 상기 기설정 개수의 비교용 태그 집합체에 포함된 속성 태그 각각과 비교하고, 이에 대한 유사 결과가 기설정 확률 이상인 경우, 상기 복수의 소정 태그 집합체에 대응하는 상기 복수의 소정 객체를 동일 구조 엘리먼트로서 디스플레이할 수 있다.
즉, 프로세서(120)가 기설정 개수의 비교용 태그 집합체에 포함된 속성 태그 각각에 대해 특정 태그 집합체에 포함되어 있는 속성 태그를 비교하고, 이에 대한 비교 결과가 기설정 확률 이상인 경우에 복수의 소정 객체(ex 서적, 쇼핑 아이템 등)를 동일 구조 엘리먼트로서 최종적으로 디스플레이할 수 있는 것이다.
도 7에는 기설정 개수의 비교용 태그 집합체가 존재하며, 이들 각각에는 적어도 하나 이상의 속성 태그가 포함될 수 있다. 구체적으로는, 좌측의 태그 집합체는 특정 태그 집합체에 해당하고, 우측의 태그 집합체 각각(ex book[1], book[2], book[3])이 복수의 소정 태그 집합체 중 추출된 기설정 개수의 비교용 태그 집합체에 해당할 수 있다.
도 7에서 볼 수 있듯이, book[1] 태그 집합체는 속성 태그로서 title, author, year, price, description을 포함하고, book[2] 태그 집합체는 속성 태그로서 title, author, year, price을 포함하며, book[3] 태그 집합체는 속성 태그로서 title, author, price을 포함하고 있다.
이때, 특정 태그 집합체에 포함된 속성 태그의 개수가 비교용 태그 집합체에 포함된 속성 태그의 개수보다 많거나 같은 경우, 특정 태그 집합체에 포함된 속성 태그의 개수를 p, 비교용 태그 집합체에 포함된 속성 태그의 개수를 q라고 하고, 반대로 특정 태그 집합체에 포함된 속성 태그의 개수가 상기 비교용 태그 집합체에 포함된 속성 태그의 개수보다 적은 경우, 상기 특정 태그 집합체에 포함된 속성 태그의 개수를 q, 상기 비교용 태그 집합체에 포함된 속성 태그의 개수를 p라고 설정할 수 있다.
프로세서(120)는 기설정 개수의 비교용 태그 집합체 각각마다 아래 수식을 연산하여 비교 값을 산출할 수 있다.
(수식) q/p = 비교 값
즉, 상기 수식은 특정 태그 집합체에 포함된 속성 태그의 개수와 비교용 태그 집합체에 포함된 속성 태그의 개수 중 작은 수(q)를 큰 수(p)로 나누어 비교 값을 산출하는 것을 의미할 수 있다.
또한, 프로세서(120)는 기설정 개수의 비교용 태그 집합체 각각의 비교 값을 기초로 획득한 평균 값이 기설정 확률 이상인지 여부를 판단할 수 있다.
도 7을 살펴보면, 비교용 태그 집합체가 book[1, 2, 3]로 3개가 존재하고, 각각을 특정 태그 집합체(속성 태그의 개수가 4개)와 비교한 것을 확인할 수 있다.
비교용 태그 집합체 book[1]은 포함하고 있는 속성 태그의 개수가 5개이므로 수식에 의해 산출된 비교 값이 4/5=80%이고, 비교용 태그 집합체 book[2]은 포함하고 있는 속성 태그의 개수가 4개이므로 수식에 의해 산출된 비교 값이 4/4=100%이며, 비교용 태그 집합체 book[3]은 포함하고 있는 속성 태그의 개수가 3개이므로 수식에 의해 산출된 비교 값이 3/4=75%에 해당할 수 있다.
프로세서(120)는 상기 비교 값들의 평균 값을 산출할 수 있고, 도 7의 경우 80, 100, 75에 대한 평균 값으로서 85%가 산출될 수 있다. 기설정 확률 수치가 80으로 설정되어 있다고 할 때, 평균 값이 85%로서 기설정 확률 수치 이상이므로 프로세서(120)는 복수의 소정 태그 집합체에 대응하는 복수의 소정 객체를 동일 구조 엘리먼트로서 디스플레이할 수 있을 것이다.
즉, 일부의 비교용 태그 집합체의 동일성이 만족되므로, 전체의 복수의 태그 집합체의 동일성 역시 만족하는 것으로 보고, 복수의 소정 객체를 동일 구조 엘리먼트로서 디스플레이할 수 있는 것이다.
상기 비교 값들의 평균 값이 기설정 확률 수치(ex 80%)보다 아래인 경우, 프로세서(120)는 해당하는 소정 객체들을 동일 구조 엘리먼트에 해당하지 않는 것으로 보고 동일 구조가 존재하지 않는다는 메시지를 디스플레이할 수 있다.
위와 같이, 속성 태그의 일치 여부 및 개수를 이용하여 확률 수치로서 동일 구조를 판단하는 것은 태그 집합체 아래의 속성 태그의 개수가 일정 수치 이상인 경우에만 적용될 수 있다. 특정 태그 집합체의 속성 태그의 개수가 일정 수치(ex 2개)보다 아래인 경우에는 상기 수식(q/p=비교 값) 및 평균 값을 이용한 프로세스가 적용되지 않을 것이다.
또한, 상기 수식에서는 단순하게 특정 태그 집합체의 속성 태그의 개수 및 비교용 태그 집합체에 포함된 속성 태그의 개수를 단순하게 나누는 방식(q/p)을 고려하였으나, 태그 집합체의 속성 태그의 개수가 일정 개수(ex 30개)이상인 경우에는 보다 정확한 비교를 위해 일부 값들을 조정한 수식을 이용할 수도 있다.
구체적으로, 특정 태그 집합체의 속성 태그의 개수에서 소정 수치를 뺀 값 및 비교용 태그 집합체에 포함된 속성 태그의 개수에서 상기 소정 수치를 뺀 값을 나누는 방식을 이용할 수 있는 것이다. 이 경우의 수식은 (q-K/p-K = 비교 값)이 될 수 있을 것이다. 상기 소정 수치 값인 K는 일종의 상수로서 포함하는 속성 태그의 개수에 따라 변경될 수 있다. 예를 들어, 속성 태그의 개수가 많을수록 상기 K값 역시 커질 수 있는 것이다.
한편, 어느 하나의 웹 페이지 상에서 동일 구조의 객체를 추출하는 프로세스뿐만 아니라, 상기 웹 페이지 들이 복수 개 연결되어 있는 웹 사이트 내에서도 동일 구조의 객체를 추출할 수도 있다. 이는 어느 하나의 웹 페이지에서 본 발명의 프로세스를 수행한 후 페이지 처리만을 수행하여 다음 웹 페이지로 넘어갈 수 있기 때문이다.
즉, 복수의 웹 페이지를 포함하고 있는 웹 사이트에서도 본 발명의 프로세스가 수행될 수 있고, 각각의 웹 페이지에서 추출된 동일 구조의 데이터(엘리먼트)들을 각각 디스플레이하거나, 전체를 한번에 디스플레이할 수도 있을 것이다. 따라서, 프로세서(120)는 사용자로 하여금 특정 웹 사이트의 주소만을 입력하도록 하여 디스플레이되어 있는 동일 구조의 데이터들을 확인하도록 할 수 있다.
이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.

Claims (8)

  1. 동일 구조의 데이터를 추출하는 방법에 있어서,
    웹 사이트에 복수 개의 객체 및 상기 복수 개의 객체 각각에 포함된 속성 값이 디스플레이되어 있는 상태에서,
    상기 복수 개의 객체 각각에 대응하는 복수 개의 태그 집합체가 본문 범위에 포함된 상태로 웹 언어로 표현되어 상기 웹 사이트를 이루고 있다고 할 때,
    (a) 컴퓨팅 장치가, 검색 대상에 해당하는 객체의 속성 값에 해당하는 텍스트 정보를 획득하는 단계;
    (b) 상기 컴퓨팅 장치가, 상기 본문 범위에 포함된 복수의 태그 각각을 검색하여, 특정 태그 집합체에 포함되어 있고 상기 텍스트 정보에 해당하는 특정 태그를 확인하는 단계;
    (c) 상기 특정 태그가 다른 태그 집합체에 형제 태그를 가지고 있지 않은 경우, 상기 컴퓨팅 장치가, i) 상기 특정 태그 집합체에 포함되어 있고, ii) 상기 특정 태그의 상위 태그에 해당하며, iii) 상기 다른 태그 집합체에 형제 태그를 가지고 있는 특정 항목 태그를 검색하는 단계; 및
    (d) 상기 컴퓨팅 장치가, 상기 특정 항목 태그와 형제 태그에 해당하는 항목 태그를 최상위 태그로 포함하면서 상기 본문 범위에 포함된 복수의 소정 태그 집합체를 획득하고, 이에 대응하는 복수의 소정 객체를 디스플레이하는 단계;
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 (b) 단계에서,
    상기 복수의 태그 집합체 각각이 항목 태그 및 속성 태그를 포함하고, 상기 속성 태그는 상기 항목 태그의 하위 태그에 해당하며, 상기 복수의 태그 집합체 각각의 항목 태그는 서로 형제 태그 관계에 있는 상태에서,
    제1 태그 집합체 및 제2 태그 집합체가 상기 본문 범위에 포함되어 있고, 상기 제1 태그 집합체가 제1 항목 태그, 제1-1 속성 태그 및 제1-2 속성 태그를 포함하고, 상기 제2 태그 집합체가 제2 항목 태그, 제2-1 속성 태그 및 제2-2 속성 태그를 포함한다고 할 때,
    상기 컴퓨팅 장치는, 상기 제1 항목 태그, 상기 제1-1 속성 태그, 상기 제1-2 속성 태그, 상기 제2 항목 태그, 상기 제2-1 속성 태그, 상기 제2-2 속성 태그 순으로 상기 텍스트 정보에 해당하는 상기 특정 태그를 확인하는 것을 특징으로 하는 방법.
  3. 제2항에 있어서,
    상기 텍스트 정보가 적어도 제1 그룹 및 제2 그룹을 포함하고 있다고 할 때,
    상기 컴퓨팅 장치는, 상기 제1 그룹의 텍스트 및 상기 제2 그룹의 텍스트 각각을 상기 제1 항목 태그의 텍스트, 상기 제1-1 속성 태그의 텍스트, 상기 제1-2 속성 태그의 텍스트, 상기 제2 항목 태그의 텍스트, 상기 제2-1 속성 태그의 텍스트, 상기 제2-2 속성 태그의 텍스트 순으로 비교하여 일치여부를 판단하는 것을 특징으로 하는 방법.
  4. 제2항에 있어서,
    동일 태그 집합체에 포함된 소정 항목 태그의 텍스트 및 소정 속성 태그의 텍스트가 모두 상기 텍스트 정보를 포함하고 있는 경우,
    상기 컴퓨팅 장치는, 하위 태그에 해당하는 상기 소정 속성 태그를 상기 특정 태그로서 확인하는 것을 특징으로 하는 방법.
  5. 제1항에 있어서,
    상기 (d) 단계는,
    (d1) 상기 컴퓨팅 장치가, 상기 본문 범위에 포함된 상기 복수의 소정 태그 집합체 중 기설정 개수의 비교용 태그 집합체를 추출하는 단계, 및
    (d2) 상기 컴퓨팅 장치가, 상기 특정 태그 집합체에 포함되어 있는 속성 태그를 상기 기설정 개수의 비교용 태그 집합체에 포함된 속성 태그 각각과 비교하고, 이에 대한 유사 결과가 기설정 확률 수치 이상인 경우, 상기 복수의 소정 태그 집합체에 대응하는 상기 복수의 소정 객체를 동일 구조 엘리먼트로서 디스플레이하는 단계
    를 포함하는 것을 특징으로 하는 방법.
  6. 제5항에 있어서,
    상기 (d2) 단계에서,
    상기 기설정 개수의 비교용 태그 집합체 각각에 적어도 하나 이상의 속성 태그가 포함되어 있는 상태에서,
    I-1) 상기 특정 태그 집합체에 포함된 속성 태그의 개수가 상기 비교용 태그 집합체에 포함된 속성 태그의 개수보다 많거나 같은 경우, 상기 특정 태그 집합체에 포함된 속성 태그의 개수를 p, 상기 비교용 태그 집합체에 포함된 속성 태그의 개수를 q라고 하고, I-2) 상기 특정 태그 집합체에 포함된 속성 태그의 개수가 상기 비교용 태그 집합체에 포함된 속성 태그의 개수보다 적은 경우, 상기 특정 태그 집합체에 포함된 속성 태그의 개수를 q, 상기 비교용 태그 집합체에 포함된 속성 태그의 개수를 p라고 할 때,
    상기 컴퓨팅 장치는, II-1) 상기 기설정 개수의 비교용 태그 집합체 각각마다 아래 수식을 연산하여 비교 값을 산출하며, II-2) 상기 기설정 개수의 비교용 태그 집합체 각각의 비교 값을 기초로 획득한 평균 값이 기설정 확률 수치 이상인지 여부를 판단하는 것을 특징으로 하는 방법.
    수식) q/p = 비교 값
  7. 제1항에 있어서,
    상기 (a) 단계에서,
    상기 텍스트 정보는 드래그 또는 사용자 입력을 통해 획득가능한 것을 특징으로 하는 방법.
  8. 동일 구조의 데이터를 추출하는 장치에 있어서,
    웹 사이트에 복수 개의 객체 및 상기 복수 개의 객체 각각에 포함된 속성 값이 디스플레이되어 있는 상태에서,
    상기 복수 개의 객체 각각에 대응하는 복수 개의 태그 집합체가 본문 범위에 포함된 상태로 웹 언어로 표현되어 상기 웹 사이트를 이루고 있다고 할 때,
    상기 웹 사이트로부터 정보를 수신하는 통신부;
    I) 검색 대상에 해당하는 객체의 속성 값에 해당하는 텍스트 정보를 획득하고, II) 상기 본문 범위에 포함된 복수의 태그 각각을 검색하여, 특정 태그 집합체에 포함되어 있고 상기 텍스트 정보에 해당하는 특정 태그를 확인하고, III) 상기 특정 태그가 다른 태그 집합체에 형제 태그를 가지고 있지 않은 경우, i) 상기 특정 태그 집합체에 포함되어 있고, ii) 상기 특정 태그의 상위 태그에 해당하며, iii) 상기 다른 태그 집합체에 형제 태그를 가지고 있는 특정 항목 태그를 검색하며, IV) 상기 특정 항목 태그와 형제 태그에 해당하는 항목 태그를 최상위 태그로 포함하면서 상기 본문 범위에 포함된 복수의 소정 태그 집합체를 획득하고, 이에 대응하는 복수의 소정 객체를 디스플레이하는 프로세서;
    를 포함하는 컴퓨팅 장치.
PCT/KR2021/011847 2020-11-05 2021-09-02 동일 구조의 데이터를 추출하는 방법 및 그를 이용한 장치 WO2022097891A1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP21889356.8A EP4089550A4 (en) 2020-11-05 2021-09-02 METHOD FOR EXTRACTING DATA WITH IDENTICAL STRUCTURE AND APPARATUS USING SAME
US17/889,332 US20220398286A1 (en) 2020-11-05 2022-08-16 Method for extracting same-structured data, and apparatus using same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200146767A KR102248294B1 (ko) 2020-11-05 2020-11-05 동일 구조의 데이터를 추출하는 방법 및 그를 이용한 장치
KR10-2020-0146767 2020-11-05

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/889,332 Continuation US20220398286A1 (en) 2020-11-05 2022-08-16 Method for extracting same-structured data, and apparatus using same

Publications (1)

Publication Number Publication Date
WO2022097891A1 true WO2022097891A1 (ko) 2022-05-12

Family

ID=75913724

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2021/011847 WO2022097891A1 (ko) 2020-11-05 2021-09-02 동일 구조의 데이터를 추출하는 방법 및 그를 이용한 장치

Country Status (4)

Country Link
US (1) US20220398286A1 (ko)
EP (1) EP4089550A4 (ko)
KR (1) KR102248294B1 (ko)
WO (1) WO2022097891A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102248294B1 (ko) * 2020-11-05 2021-05-04 주식회사 해시스크래퍼 동일 구조의 데이터를 추출하는 방법 및 그를 이용한 장치

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080031928A (ko) * 2005-08-03 2008-04-11 윙크 테크놀로지스 인코포레이티드 태그를 분석하여 관련 문서를 찾기 위한 시스템 및 방법
US20100107055A1 (en) * 2005-07-20 2010-04-29 Orelind Greger J Extraction of datapoints from markup language documents
KR20130059866A (ko) * 2011-11-29 2013-06-07 변규홍 웹 문서 변환 장치 및 방법
KR20140100869A (ko) * 2013-02-06 2014-08-18 삼성전자주식회사 서비스를 이용하기 위한 객체를 제공하는 시스템 및 방법
CN104965849A (zh) * 2015-03-31 2015-10-07 哈尔滨工程大学 一种基于wvp_dom树相似性的网页不变形噪音过滤方法
KR102248294B1 (ko) * 2020-11-05 2021-05-04 주식회사 해시스크래퍼 동일 구조의 데이터를 추출하는 방법 및 그를 이용한 장치

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007119567A1 (ja) * 2006-03-31 2007-10-25 Justsystems Corporation 文書処理装置および文書処理方法
US9141692B2 (en) * 2009-03-05 2015-09-22 International Business Machines Corporation Inferring sensitive information from tags
WO2010106681A1 (ja) * 2009-03-19 2010-09-23 富士通株式会社 データベース検索プログラムを記録するコンピュータ読取可能な記憶媒体、データベース検索装置、および、データベース検索方法
US11480932B2 (en) * 2019-10-10 2022-10-25 Johnson Controls Tyco IP Holdings LLP Systems and methods for applying semantic information to data in a building management system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100107055A1 (en) * 2005-07-20 2010-04-29 Orelind Greger J Extraction of datapoints from markup language documents
KR20080031928A (ko) * 2005-08-03 2008-04-11 윙크 테크놀로지스 인코포레이티드 태그를 분석하여 관련 문서를 찾기 위한 시스템 및 방법
KR20130059866A (ko) * 2011-11-29 2013-06-07 변규홍 웹 문서 변환 장치 및 방법
KR20140100869A (ko) * 2013-02-06 2014-08-18 삼성전자주식회사 서비스를 이용하기 위한 객체를 제공하는 시스템 및 방법
CN104965849A (zh) * 2015-03-31 2015-10-07 哈尔滨工程大学 一种基于wvp_dom树相似性的网页不变形噪音过滤方法
KR102248294B1 (ko) * 2020-11-05 2021-05-04 주식회사 해시스크래퍼 동일 구조의 데이터를 추출하는 방법 및 그를 이용한 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP4089550A4 *

Also Published As

Publication number Publication date
KR102248294B1 (ko) 2021-05-04
EP4089550A1 (en) 2022-11-16
US20220398286A1 (en) 2022-12-15
EP4089550A4 (en) 2024-04-03

Similar Documents

Publication Publication Date Title
WO2012108623A1 (ko) 이미지 데이터베이스에 신규 이미지 및 이에 대한 정보를 추가하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체
WO2016208916A1 (en) Method and system for context based tab management
WO2013044748A1 (zh) 网页恶意属性监测方法和系统
WO2012093815A2 (ko) 적어도 한 명의 사용자의 성향을 고려하여 타사용자 또는 사물을 추천하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체
WO2010011026A2 (ko) 이미지를 이용한 검색 시스템
WO2017030306A1 (en) Method and system for bookmarking a webpage
WO2010134752A2 (ko) 다수 분류 체계를 연동한 시멘틱 검색 방법 및 시스템
WO2022097891A1 (ko) 동일 구조의 데이터를 추출하는 방법 및 그를 이용한 장치
WO2011162446A1 (ko) 온톨로지 스키마와 결합된 개체명 사전 및 마이닝 규칙을 이용한 용어의 개체명 결정모듈 및 방법
WO2021118039A1 (ko) 딥러닝 기반 유사 이미지를 필터링하는 방법 및 그를 이용한 장치
WO2014036975A1 (zh) 社交网络搜索结果展示方法、装置及存储介质
WO2016006837A1 (ko) 문장 분석을 이용하는 전화 번호 안내 시스템 및 전화 번호 안내 방법
WO2021118040A1 (ko) 딥러닝 기반 유사 텍스트를 필터링하는 방법 및 그를 이용한 장치
WO2017074066A1 (ko) 인터넷 콘텐츠 제공 서버 및 그 방법이 구현된 컴퓨터로 판독 가능한 기록매체
WO2016117739A1 (ko) 인-메모리 데이터베이스 기반의 데이터 관리 시스템 및 그 방법
WO2014148664A1 (ko) 단어의 의미를 기반으로 하는 다국어 검색 시스템, 다국어 검색 방법 및 이를 이용한 이미지 검색 시스템
CN103631793A (zh) 一种用于对搜索结果进行排序的方法、装置与设备
WO2012046904A1 (ko) 다중 자원 기반 검색정보 제공 장치 및 방법
WO2020111662A1 (ko) 북마크관리 및 정보검색 서비스 제공시스템 및 이를 이용한 북마크관리 및 정보검색 서비스 제공방법
WO2011062378A2 (en) Method and apparatus for displaying and arranging data 3-dimensionally
WO2017179778A1 (ko) 빅데이터를 이용한 검색 방법 및 장치
WO2019112223A1 (ko) 전자 문서 검색 방법 및 그 서버
WO2011118915A4 (ko) 어플리케이션 검색 시스템
WO2012030049A2 (ko) 동적 임계값이 적용된 유사문서 분류화 장치 및 방법
WO2019194569A1 (ko) 이미지 검색 방법, 장치 및 컴퓨터 프로그램

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21889356

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021889356

Country of ref document: EP

Effective date: 20220810

NENP Non-entry into the national phase

Ref country code: DE