KR20130102839A - 웹 페이지 상에서 본문 추출을 위한 방법 및 장치 - Google Patents

웹 페이지 상에서 본문 추출을 위한 방법 및 장치 Download PDF

Info

Publication number
KR20130102839A
KR20130102839A KR1020120023988A KR20120023988A KR20130102839A KR 20130102839 A KR20130102839 A KR 20130102839A KR 1020120023988 A KR1020120023988 A KR 1020120023988A KR 20120023988 A KR20120023988 A KR 20120023988A KR 20130102839 A KR20130102839 A KR 20130102839A
Authority
KR
South Korea
Prior art keywords
area
region
body region
text
displaying
Prior art date
Application number
KR1020120023988A
Other languages
English (en)
Other versions
KR101990450B1 (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 KR1020120023988A priority Critical patent/KR101990450B1/ko
Priority to US13/791,183 priority patent/US9678932B2/en
Priority to CN201310074990.9A priority patent/CN103309924B/zh
Priority to EP20130158450 priority patent/EP2639717A3/en
Publication of KR20130102839A publication Critical patent/KR20130102839A/ko
Application granted granted Critical
Publication of KR101990450B1 publication Critical patent/KR101990450B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • 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/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

본 발명은 본문 추출에 관한 것으로, 웹 페이지에서 본문 추출을 위한 방법에 있어서 사용자가 지정한 좌표를 기반으로 시작 노드를 결정하는 과정과 상기 시작 노드를 기반으로 본문 영역을 결정하는 과정과 결정된 본문 영역을 디스플레이하는 과정을 포함하는 것을 특징으로 한다.

Description

웹 페이지 상에서 본문 추출을 위한 방법 및 장치{METHOD AND APPARATUS FOR BODY EXTRACTING ON WEB PAGES}
본 발명은 본문 추출에 관한 것으로, 특히, 휴대용 전자 장치에서 웹 서핑 시, 웹 페이지에서 본문 만을 추출하여 디스플레이하기 위한 방법 및 장치에 관한 것이다.
사용자가 휴대용 전자 장치를 통해 웹 신문이나 블로그와 같이 본문 영역이 존재하는 사이트에 접속하면, 기존의 기술을 이용한 응용 프로그램들은 해당 사이트의 HTML(HyperText Markup Language) 파일의 수신이 끝남과 동시에 전체 HTML 페이지를 분석하고 본문을 구성한다.
휴대용 전자 장치가 웹 페이지에서 본문을 추출하는 경우, 하나의 웹 페이지마다 해당 페이지의 전체 HTML 페이지를 분석하므로 전력 사용량 및 CPU (Central Processing Unit)사용량이 증가하는 문제점이 있다.
일례로 사용자가 웹 브라우징을 수행 시, 본문의 추출이 필요 없는 사진 게시판을 브라우징하는 경우, HTML 페이지를 수신할 때마다 전체 파일을 분석함으로써 전력 사용량 및 CPU 사용량이 증가하는 문제점이 있다.
그리고, 기존의 기술은 한 페이지에 고정적으로 하나의 기사 본문만 추출되므로 본문 외에 장문의 댓글과 같은 기타 영역에 대해서는 추출이 되지 않는 문제점이 있다.
       
본 발명의 목적은 웹 페이지 상에서 본문 추출을 위한 방법 및 장치를 제공함에 있다.
본 발명의 다른 목적은 광고와 관련 링크 등이 포함된 웹페이지에서 본문의 내용(텍스트 + 이미지)을 추출해서 사용자에게 표시함으로써 본문의 가독성을 높이고, 사용자 경험을 향상시키기 위한 방법 및 장치를 제공함에 있다.
본 발명의 또 다른 목적은 데스크 탑에 최적화된 웹페이지의 경우, 본문의 너비가 모바일 기기의 화면 너비보다 넓을 수 있고, 이 경우, 전체 내용을 확인할 때에 상하 스크롤 외에도 좌우 스크롤이 필요해서 사용자가 내용의 파악이 쉽지 않으므로 상하 및 좌우 스크롤이 필요 없이 본 본문의 내용만을 추출하기 위한 방법 및 장치를 제공함에 있다.
본 발명의 목적들을 달성하기 위한 제 1 견지에 따르면, 웹 페이지에서 본문 추출을 위한 방법에 있어서 사용자가 지정한 좌표를 기반으로 시작 노드를 결정하는 과정과 상기 시작 노드를 기반으로 본문 영역을 결정하는 과정과 결정된 본문 영역을 디스플레이하는 과정을 포함하는 것을 특징으로 한다.
본 발명의 목적들을 달성하기 위한 제 2 견지에 따르면, 터치 감지 디스플레이, 하나 이상의 프로세서, 메모리 및 상기 메모리에 저장되어 있으며 상기 하나 이상의 프로세서에 의하여 실행되도록 구성되는 하나 이상의 프로그램을 포함하는 전자 장치로서, 상기 프로그램은 사용자가 지정한 좌표를 기반으로 시작 노드를 결정하고 상기 시작 노드를 기반으로 본문 영역을 결정하고 결정된 본문 영역을 디스플레이하는 명령어를 포함하는 전자 장치를 특징으로 한다.
본 발명은 사용자가 필요로 하는 영역의 본문만을 추출하여 디스플레이함으로써 휴대용 전자 장치의 전력 소모 및 CPU 사용량을 줄이고 사용자에게는 높은 가독성을 제공할 수 있는 이점이 있다.
도 1은 본 발명의 실시 예에 따른 전자 장치를 도시한 도면이다.
도 2는 본 발명의 실시 예에 따른 본문 추출 과정을 개략적으로 도시한 도면이다.
도 3은 본 발명의 실시 예에 따른 본문 영역을 도시한 도면이다.
도 4는 본 발명의 다른 실시 예에 따른 본문 영역을 도시한 도면이다.
도 5는 본 발명의 실시 예에 따른 영역의 좌표와 너비를 도시한 도면이다.
도 6은 본 발명의 실시 예에 따른 시작 노드를 도시한 도면이다.
도 7은 본 발명의 실시 예에 따른 여러 종류의 태그를 도시한 도면이다.
도 8은 본 발명의 실시 예에 따른 시작 영역과 본문 영역이 동일한 경우를 도시한 도면이다.
도 9는 본 발명의 실시 예에 따른 여러 개의 영역 태그들이 하나의 본문 영역을 형성하는 경우를 도시한 도면이다.
도 10은 본 발명의 실시 예에 따른 불필요한 영역들이 제거된 경우를 도시한 도면이다.
도 11은 본 발명의 실시 예에 따른 본문 추출 과정을 도시한 흐름도이다.
이하 본 발명의 바람직한 실시 예를 첨부된 도면을 기준하여 상세히 설명한다. 그리고, 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
이하, 본 발명은 웹 페이지 상에서 본문 추출을 위한 방법 및 장치에 대해 설명할 것이다.
도 1은 본 발명의 실시 예에 따른 전자 장치를 도시한 도면이다.
상기 도 1을 참조하면, 본 발명에 따른 휴대용 전자 장치(portable electronic device)(100)는 휴대용 단말기(portable terminal), 이동 전화(mobile phone), 이동 패드(mobile pad), 미디어 플레이어(media player), 태블릿(tablet) 컴퓨터, 핸드헬드 컴퓨터(handheld computer), PDA(Personal Digital Assistant)과 같은 장치이다. 또한, 이러한 장치들 중 두 가지 이상의 기능을 결합한 장치를 포함하는 소정 휴대용 전자 장치일 수도 있다.
이러한 휴대용 전자 장치(100)는 메모리(110), 프로세서(processor) 유닛(120), 통신 유닛(130), 외부 포트(140), 오디오 IC(Integrated Circuit) 유닛(150), 스피커(160), 마이크로폰(170), 입출력(IO, Input Output) 시스템(180), 터치스크린(190) 및 기타 입력 또는 제어 장치(191)를 포함한다. 메모리(110)와 외부 포트(140)는 다수 개 사용될 수 있다.
여기에서, 프로세서(processor) 유닛(120)은 메모리 제어기 (121), 프로세서(processor)[중앙처리장치(CPU, Central Processing Unit)라고도 함)(122) 및 주변 인터페이스(123)을 포함한다. 여기에서 프로세서는 하나 이상 존재할 수 있다.
통신 유닛(130)은 기저대역처리부(base band processor)(132)와 RF IC 유닛 (Radio Frequency Integrated Circuit Unit)(131)을 포함한다. 입출력 시스템(180)은 터치스크린 제어기(181)와 기타 입력 제어기(182)를 포함한다.
또한, 이러한 구성요소들 각각은 하나 이상의 통신 버스 또는 신호선(참조번호 미기재)을 통하여 서로 통신한다.
이러한 구성요소는 하나 이상의 집적 회로(integrated circuit)와 같은 하드웨어, 또는 소프트웨어로 기능을 구현할 수 있으며, 또한, 하드웨어와 소프트웨어의 조합으로 구현될 수 있다.
상기 도 1에 도시된 휴대용 전자 장치(100)는 한 가지 예이며, 여기에서 도시한 것보다 많은 개수의 구성요소를 가지거나, 또는 더 적은 개수의 구성요소를 가질 수 있다. 또는 도시한 것과는 다른 방식으로 구성(configuration)될 수 있다.
각 구성요소에 대해 살펴보면 다음과 같다.
메모리(110)는 랜덤 액세스 메모리(random access memory), 플래시(flash) 메모리를 포함하는 불휘발성(non-volatile) 메모리, 롬(ROM, Read Only Memory), 전기적 삭제가능 프로그램가능 롬(EEPROM, Electrically Erasable Programmable Read Only Memory) 또는 자기 디스크 저장 장치(magnetic disc storage device), 컴팩트 디스크 롬(CD-ROM, Compact Disc-ROM), 디지털 다목적 디스크(DVDs, Digital Versatile Discs) 또는 다른 광학 저장 장치, 마그네틱 카셋트, 또는 이들의 일부 또는 전부의 조합으로 구성될 수 있다. 이와 같은 형태의 각각의 메모리는 다수 개 포함될 수도 있다.
또한, 휴대용 전자 장치에 인터넷(Internet), 인트라넷(Intranet), LAN(Local Area Network), WLAN(Wide LAN), 또는 SAN(Storage Area Network)과 같은 통신 네트워크, 또는 이들의 조합으로 구성된 통신 네트워크를 통하여 접근(access)할 수 있는 부착 가능한(attachable) 저장 장치(storage device)를 메모리로 더 포함할 수 있다. 이러한 저장 장치는 외부 포트(140)를 통하여 휴대용 전자 장치에 접근할 수 있다. 또한, 통신 네트워크상의 별도의 저장장치가 RF IC 유닛(131)을 통하여 휴대용 전자 장치에 접근할 수도 있다.
이러한 메모리(110)는 소프트웨어를 저장한다. 소프트웨어 구성요소는 운영 체제(111) 소프트웨어, 통신 소프트웨어 모듈(112), 그래픽 소프트웨어 모듈(113), 사용자 인터페이스 소프트웨어 모듈 및 하나 이상의 애플리케이션 소프트웨어(115)를 포함한다. 여기에서, 소프트웨어 모듈은 명령어 세트(instruction set)라고 표현하기도 한다.
운영 체제 소프트웨어(111)[예를 들어, WINDOWS, LINUX, 다윈(Darwin), RTXC, UNIX, OS X, 또는 VxWorks와 같은 내장 운영 체제]는 일반적인 시스템 작동(operation)을 제어하는 여러 가지의 소프트웨어 구성요소를 포함한다. 이러한 일반적인 시스템 작동의 제어는, 예를 들면, 메모리 관리 및 제어, 저장 하드웨어(장치) 제어 및 관리, 전력 제어 및 관리 등을 의미한다. 이러한 운영 체제 소프트웨어는 여러 가지의 하드웨어(장치)와 소프트웨어 구성요소 사이의 통신을 원활하게 하는 기능도 수행한다.
통신 소프트웨어 모듈(112)은 RF IC 유닛(131)이나 외부 포트(140)를 통하여 송신하고 수신하는 데이터를 처리하기 위한 여러 가지의 소프트웨어 구성요소를 포함한다.
그래픽 소프트웨어 모듈(113)은 터치스크린(190) 상에 그래픽을 제공하고 표시하기 위한 여러 가지 소프트웨어 구성요소를 포함한다. 그래픽(graphics)이란 용어는 텍스트(text), 웹 페이지(web page), 아이콘(icon), 디지털 이미지(digital image), 비디오(video), 애니메이션(animation) 등을 포함한다.
사용자 인터페이스 모듈(114)은 사용자 인터페이스에 관련한 여러 가지 소프트웨어 구성요소를 포함한다. 사용자 인터페이스의 상태가 어떻게 변경되는지 또는 사용자 인터페이스 상태의 변경이 어떤 조건에서 이루어지는지 등에 대한 내용을 포함한다.
애플리케이션 소프트웨어(115)는 브라우저(browser), 이메일(email), 즉석 메시지(instant message), 워드 프로세싱(word processing), 키보드 에뮬레이션(keyboard emulation), 어드레스 북(address book), 접촉 리스트(touch list), 위짓(widget), JAVA 인에이블 애플 리케이션, 부호화(coding), 디지털 저작권 관리(DRM, Digital Right Management), 음성 인식(voice recognition), 음성 복제, 위치 결정 기능(position determining function), 위치기반 서비스(location based service), 음악 플레이어(music player) 등을 포함한다. 또한, 본 발명의 본문 추출을 위한 애플리케이션도 포함된다. 본 발명의 본문 추출을 위한 애플리케이션은 이하에서 설명될 것이다.
프로세서 유닛(120)에 포함된 프로세서(122) 또는 주변 인터페이스(123)와 같은 다른 구성요소가 메모리 (110)에 접근(액세스)하는 경우의 제어는 메모리 제어기(121)에 의하여 수행된다.
외부 포트(140)는, 예를 들면, 이들에 한정되지는 않지만, USB 또는 FIREWIRE 등을 말한다. 다른 장치로 직접 연결되거나 네트워크(예컨대, 인터넷, 인트라넷, 무선 LAN 등)를 통하여 다른 장치로 간접적으로 연결하는 데 사용된다.
주변 인터페이스(123)는 휴대용 전자 장치(100)의 입출력 주변 장치를 프로세서(122) 및 메모리(110)(메모리 제어기의 제어 하에)에 연결시킨다. 휴대용 전자 장치(100)는 다수 개의 프로세서(122)를 포함할 수 있다. 프로세서(122)는 여러 가지의 소프트웨어 프로그램을 사용하여 휴대용 전자 장치(100)를 위한 여러 기능을 수행하며, 또한 음성 통신 및 데이터 통신을 위한 처리 및 제어를 수행한다. 또한, 이러한 통상적인 기능에 더하여, 프로세서(122)는 메모리(110)에 저장되어 있는 특정한 소프트웨어 모듈(명령어 세트)을 실행하여 그 모듈에 대응하는 특정한 여러 가지의 기능을 수행하는 역할도 한다.
프로세서(122), 주변 인터페이스(123) 및 메모리 제어기(121)는 단일 칩에서 구현될 수 있으며, 여기에서는 이렇게 단일 칩으로 구성한 것을 프로세서 유닛(120)으로 칭한다. 또한, 이들 구성요소는 단일 칩이 아니라 별개의 칩으로 구현될 수 있다 .
통신 유닛(130)은 RF IC 유닛(Radio Frequency IC unit)(131)과 기저대역처리부(132)를 포함한다. RF IC 유닛(131)은 전자파를 송수신한다. 기저대역처리부(132)로부터의 기저대역신호를 전자파로 변환하여 안테나(참조번호 미기재)를 통하여 송신한다. 또는 안테나를 통하여 수신한 전자파를 변환하여 기저대역 처리부에 제공한다. RF IC 유닛 (131)은, RF 트랜시버(transceiver), 증폭기(amplifier), 튜너(tunor), 오실레이터(oscillator), 디지털 신호 처리기(digital signal processor), CODEC 칩셋(COding DECoding chip set), 가입자 식별 모듈 (SIM, Subscriber Identity Module) 카드 등을 포함한다.
RF IC 유닛(131)은 전자파를 통하여 통신 네트워크 및 다른 통신 장치와 통신한다. 예를 들면, RF IC 유닛(131)은 인터넷, 인트라넷, 네트워크, 셀룰러 전화 네트워크, 무선 LAN이나 무선 MAN(metropolitan area network)과 같은 무선 네트워크와 통신하며, 또한, 무선 통신에 의하여 다른 전자 장치와 통신할 수 있다.
무선 통신은 TDMA(time division multiple access), GSM(Global System for Mobile Communication), EDGE(Enhanced Data GSM Environment), CDMA(code division multiple access), W-CDMA(wideband code division multiple access), 블루투스 (Bluetooth), VoIP(voice over Internet Protocol), 와이 파이 (Wireless Fidelity, Wi-Fi), Wi-MAX, 이메일, 인스턴트 메시징 (instant messaging), 단문 문자 서비스 (SMS, short message service)용 프로토콜 또는 이들 여러 가지의 통신 방식의 소정 조합을 이용하여 통신할 수 있다.
일 실시 예에서, RF IC 유닛은 안테나(참조번호 미기재)를 통해 수신되는 RF 신호를 주파수 변환하여 기저대역처리부(132)로 제공하고, 기저대역처리부(132)로부터의 기저대역신호를 주파수 변환하여 안테나를 통해 송신하며, 기저대역처리부(132)는 기저대역 신호를 처리한다. 예를 들어, CDMA(Code Division Multiple Access) 통신에서, 송신인 경우, 기저대역처리부(132)는 송신할 데이터를 채널코딩(channel coding) 및 확산(spreading)하는 기능을 수행하고, 수신인 경우, 기저대역처리부(132)는, 수신신호를 역확산(de-spreading) 및 채널복호(channel decoding)하는 기능을 수행한다.
오디오 IC 유닛(audio IC unit)(150)은 스피커(speaker)(160) 및 마이크로폰(170)을 통해 사용자와 소통한다(communicate). 즉, 오디오 IC 유닛(audio IC unit)(150)은 스피커(speaker)(160) 및 마이크로폰(170)과 함께 사용자와 휴대용 전자 장치(100) 사이에 오디오 인터페이스를 제공한다. 오디오 IC 유닛 (150)은 프로세서 유닛(120)의 주변 인터페이스(123)로부터 데이터 신호를 수신하고, 수신한 데이터 신호를 전기 신호로 변환한다. 변환된 전기 신호(electric signal)는 스피커(160)로 전달되고, 스피커(160)는 전기 신호를 사람이 들을 수 있는 음파(sound wave)로 변환하여 출력한다. 또한, 사람이나 기타 다른 소리원(sound source)들로부터 전달된 음파는 마이크로폰 (116)에서 전기 신호로 변환된다. 오디오 IC 유닛(150)은 이렇게 변환된 전기 신호를 수신한다. 오디오 IC 유닛(114)은 수신한 전기신호를 오디오 데이터 신호로 변환하며, 변환된 오디오 데이터 신호를 주변 인터페이스 (123)로 전송한다. 오디오 데이터는 주변 인터페이스(123)를 통하여 메모리(110)로 전송되거나 통신 유닛(130)으로 전송된다. 오디오 IC 유닛(150)은 탈부착 가능한(attachable and detachable) 이어폰(ear phone), 헤드폰(head phone) 또는 헤드셋(head set)과 인터페이스를 제공하는 잭(jack)(미도시)을 포함할 수 있다. 헤드셋은 출력(한 쪽 또는 두 귀용 헤드폰)과 입력(마이크로폰)이 모두 가능한 경우도 있다. 잭은 이어폰 잭 또는 헤드셋 잭이라고도 한다.
입출력 시스템(I/O system, input/output system)(180)은 터치스크린(190)과 기타 입력/제어 장치(191)와 같은 입출력 장치와 주변 인터페이스(123) 사이에 인터페이스를 제공한다. 입출력 시스템은 터치스크린 제어기(181)와 다른 입력 또는 제어 장치를 위한 기타 입력 제어기(182)를 포함한다. 입력 제어기(182)는 다수 개일 수 있으며, 기타 입력/제어장치(191)와 전기 신호를 송수신 한다. 기타 입력/제어장치(191)는 버튼(button), 다이얼(dial), 스틱(stick), 스위치(switch) 등을 포함할 수 있다. 버튼은 푸시 버튼(push button), 로커 버튼(rocker button) 등이 사용 가능하다.
터치스크린(190)은 휴대용 전자 장치(100)와 사용자 사이에 입력/출력 인터페이스를 제공한다. 즉, 터치스크린(190)은 사용자의 터치 입력을 휴대용 전자 장치(100)에 전달한다. 또한 휴대용 전자 장치(100)로부터의 출력을 사용자에게 보여주는 매개체, 즉, 터치스크린 (126)은 사용자에게 시각적인 출력을 보여준다. 이러한 시각적 출력(visual output)은 텍스트(text), 그래픽(graphic), 비디오(video)와 이들의 조합의 형태로 나타난다.
사용자는, 햅틱(haptic) 접촉, 택타일(tactile) 접촉 또는 이들의 조합 방식에 따라 터치스크린(190)을 통하여 입력한다. 터치스크린(190)은 사용자 입력을 수용하는 터치 감지면을 가진다. 예를 들면, 터치스크린(190)과 사용자 사이의 접촉 지점은 사용자 접촉에 사용된 손가락의 폭(digit)에 대응한다. 또한, 사용자는 스타일러스(stylus) 펜(pen) 등과 같이 적절한 대상물을 이용하여 터치스크린(126)과 접촉할 수 있다. 사용자가 터치스크린을 통하여 입력하면, 터치스크린(190)은 터치스크린 제어기(181) 및 이와 관련된 소프트웨어 모듈 (명령어 세트)와 연동하여 터치스크린 (126)상의 접촉을 검출한다. 검출된 접촉은, 터치스크린 상에 표시되는 사용자 인터페이스 대상(예를 들어, 소프트 키)에 대응하는 상호 작용(interaction)으로 변환한다.
터치스크린(126)은 여러 가지 디스플레이 기술이 사용될 수 있으며, 예를 들면, 이에 한정하지는 않지만, LCD(liquid crystal display) 기술, LED(Light Emitting Diode) 기술, LPD(light emitting polymer display) 또는 OLED(Organic Light Emitting Diode) 기술을 사용할 수 있다. 터치스크린(126)과 터치스크린 제어기(122)는 용량형(capacitive) 검출, 저항형(resistive) 검출, 적외선형 (infrared) 검출 또는 표면 음파 검출 기술과 같은 여러 가지 터치 검출(감지) 기술을 사용하여 접촉의 시작, 접촉의 이동 또는 접촉의 중단이나 종료를 검출(감지)할 수 있다. 또한, 이러한 목적을 위하여, 근접 감지기 어레이(proximity sensor array) 기술 또는 터치스크린상의 접촉 지점을 결정할 수 있는 다른 기술도 사용가능하다. 또한, 시각적 출력은 나타내지 않으며, 터치 입력만 검출하는 터치 감지 태블릿을 사용하는 것도 가능하다.
또한, 휴대용 전자 장치(100)는 터치스크린 이외에 특정 기능을 활성화 또는 비활성화시키는 터치패드(미도시)를 포함할 수 있다. 이러한 터치 패드는 터치스크린과는 달리 시각적 출력을 표시하지 않고, 터치 입력만 감지하는 경우도 있다. 터치패드는 터치스크린(190)과 분리되는 별도의 터치 감지면을 가질 수 있으며, 또는 터치스크린(190)이 형성하는 터치 감지면의 확장부에 형성될 수도 있다.
터치스크린(190)을 통한 접촉은 터치스크린 제어기(181)와 접촉 감지 소프트웨어의 작동으로 검출한다. 터치스크린 제어기(181)는 터치스크린(190)과 전기신호를 송수신한다. 접촉 감지 소프트웨어는 메모리(110)에 접촉 감지 소프트웨어 모듈(미도시)로 저장된다. 접촉 감지 소프트웨어 모듈은 터치스크린(190)의 접촉에 관련된 여러 동작을 판단하는 여러 가지 소프트웨어 구성을 포함한다. 이러한 소프트웨어 구성들은 터치스크린의 접촉 여부에 대한 판단, 접촉의 이동에 대한 판단, 접촉의 이동 방향 및 이동 시간에 대한 판단 및 접촉의 중지 여부에 대한 판단 등을 수행한다. 접촉의 이동에 대한 판단은 접촉의 이동 속도 (크기 또는/및 방향 포함) 또는/및 가속도(크기 또는/및 방향 포함)를 결정하는 것을 포함할 수 있다.
또한, 휴대용 전자 장치(100)에서는, 터치스크린(190) 상부에서 이루어지는 사용자의 모션에 따른 입력이 가능하기도 하다. 터치스크린 제어기(181)와 모션 감지 소프트웨어의 작동으로 검출한다. 터치스크린 제어기(181)는 터치스크린(190)과 전기신호를 송수신한다. 모션 감지 소프트웨어는 메모리(110)에 모션 감지 소프트웨어 모듈(미도시)로 저장된다. 모션 감지 소프트웨어 모듈은 터치스크린(190) 상부의 모션 검출과 관련된 모션을 판단하는 여러 가지 소프트웨어 구성을 포함한다. 이러한 소프트웨어 구성들은 터치스크린 상부의 모션 시작에 대한 판단, 모션의 이동에 대한 판단, 모션의 이동 방향 및 이동 시간에 대한 판단 및 모션의 중지 여부에 대한 판단 등을 수행한다. 모션의 이동에 대한 판단은 모션의 이동 속도 (크기 또는/및 방향 포함) 또는/및 가속도(크기 또는/및 방향 포함)를 결정하는 것을 포함할 수 있다.
또한, 휴대용 전자 장치(100)는, 휴대용 전자 장치(100)에 포함된 여러 가지 구성요소에 전력을 공급하는 전력 시스템(미도시)을 포함한다. 전력 시스템은 전원(power source)(교류 전원이나 배터리), 전력 오류 검출 회로, 전력 컨버터 (converter), 전력 인버터(inverter), 충전장치 또는/및 전력 상태 표시장치(발광 다이오드)를 포함할 수 있다. 또한, 전력의 생성, 관리 및 분배 기능을 수행하는 전력 관리 및 제어 장치를 포함할 수 있다.
또한, 휴대용 전자 장치(100)는 터치스크린(190)으로 입력하여 수행할 수 있는 여러 가지 기능을 별도의 터치패드를 통하여 입력하여 사용할 수 있다. 이러한 기능은 물리적 입력/제어 장치(예를 들어, 다이얼 또는 버튼)를 사용 할 수 있다. 휴대용 전자 장치(100)를 온/오프시키고 잠그기 위한 푸시 버튼, 볼륨 조절 로커 버튼과 링어 프로파일(ringer profile), 토글링(toggling)용 슬라이더 스위치 등이 이에 해당한다. 또한, 휴대용 전자 장치(100)는 마이크로폰(170)을 통하여 미리 정한 기능을 활성화 또는 비활성화 시키기 위한 음성 입력(voice input)을 처리하는 기능을 포함할 수 있다.
도 2는 본 발명의 실시 예에 따른 본문 추출 과정을 개략적으로 도시한 도면이다.
상기 도 2를 참조하면, 사용자가 웹 서핑 중 해당 웹 페이지에서, 특정 부분을 터치하면, 본 발명의 본문 추출을 위한 애플리케이션은 원본 HTML을 분석하여 본문이 추출된 HTML을 구성하고, 상기 본문이 추출된 HTML을 디스플레히한다.
즉, 본 발명의 본문 추출을 위한 애플리케이션은 본문만 추출해서 디스플레이한다. 본 발명에서 본문이 추출된 HTML 구성 시, 본문 추출을 위한 애플리케이션은 사용자 터치 지점의 좌표를 중심으로 한 본문을 추출하여 디스플레이한다.
본 발명에서 사용되는 용어를 정의하면 다음과 같다.
본문 영역은 도 3과 같이 웹 페이지에서 사용자의 필요성이 높은 컨텐츠(텍스트 + 이미지)가 속한 영역을 나타낸다. 상기 본문 영역에는 불필요한 영역이 도 4와 같이 존재할 수 있다. 본 발명의 본문 추출을 위한 애플리케이션은 상기 본문 영역에서 불필요한 영역을 제외한 나머지 본문 영역만을 선택적으로 디스플레이할 수 있다.
사용자 입력좌표는 사용자가 터치한 위치의 좌표로써, 본 발명에서 사용자는 본문의 추출이 필요한 영역을 터치(또는 마우스 클릭 등)함으로써 본 발명의 휴대용 전자 장치에 입력한다.
시작 노드는 웹 페이지에서 사용자 입력 좌표에 해당하는 노드로써 화면에 표시될 수 있는 모든 컨텐츠는 시작 노드가 될 수 있다. 웹 페이지에서 사용자가 지정할 수 있는 시작 노드는 텍스트, 이미지, 여백(레이아웃 태그에 의한) 등이 있다.
영역태그는 웹 페이지에서 배치(레이아웃)와 관련한 모든 태그를 나타내고, 그 예로 써, body, table, div, span, ul, dl, iframe, frameset 등이 있다.
시작영역은 시작 노드가 소속된 가장 인접한 영역태그를 나타낸다.
영역의 좌표와 너비는 도 5와 같이 웹페이지에 표시되는 영역태그(숨겨지지 않은 모든 영역태그)의 좌표와 크기를 나타낸 것으로. 좌표는 웹페이지에서 좌측 상단 기준 좌표(x,y)를 나타내고 크기는 너비와 높이(width, height)를 나타낸다.
본문 구성 영역은 본문 영역에서 시작 영역이 아닌 기타 영역을 나타낸다.
분석 대상 영역은 시작 영역의 조상 영역 중에서 너비가 시작 영역의 너비와 x좌표가 유사한 영역을 나타내고 이하에서 자세히 설명될 것이다.
본 발명에서의 휴대용 전자 장치에서 본문 추출 과정을 다음과 같다.
먼저, 사용자가 본문 추출을 수행할 좌표를 입력하고, 상기 휴대용 전자 장치는 상기 좌표를 기반으로 본문 추출을 시작한다.
이 경우, 사용자는 터치 스크린(190) 또는 마우스 등과 같은 기타 입력/제어장치(191)을 통해 본문을 추출할 웹 페이지의 특정 좌표를 지정할 수 있다.
사용자로부터 좌표가 입력되면, 웹 브라우저는 입력된 좌표에 해당하는 노드(텍스트, 이미지 등의 컨텐츠나 HTML 태그 자체를 의미)를 "시작노드"로 설정하고 본문 추출을 시작한다.
이러한 과정에서, 웹 페이지의 HTML 파일은 웹브라우저에서 분석되고, HTML 파일의 노드들은 DOM(Document Oriented Model)으로 변환되고, 이러한 DOM을 바탕으로 웹 브라우저 엔진은 컨텐츠의 배치(레이아웃)를 결정한다.
시작 노드는 웹페이지에서 사용자가 터치한 좌표(x,y)에 위치하는 전단(front-end) 노드를 나타낸다 그리고 시작 노드의 대상은 사용자가 입력한 좌표에 해당하는 모든 태그가 될 수 있다. 도 6에서 파란색 박스로 둘러싸인 IMG, TEXT 등과 같이 사용자에게 직접적으로 표시되는 태그나 빈 공터(DIV나 IFRAME, TABLE, UL, BODY 등의 레이아웃 태그에 의해서 발생하는 여백)에 해당하는 태그(아래에서 DIV, IFRAME) 들은 모두 시작 노드가 될 수 있다.
이후, 본문 영역을 설정한다. 즉, 본문의 범위를 설정한다.
본문 영역 설정시, 본 발명의 본문 추출을 위한 애플리케이션은 영역 태그를 하나의 단위로, 각 영역 태그가 사용자에게 필요한지 분석한다. 상기 영역 태그는 웹페이지에서 레이아웃(페이지에서 각 컨텐츠의 배치)과 관련한 모든 태그를 의미하고, 그 예로서, Body, Div, Span, Table, Ul, Dl 등이 있다. 즉, 도 7에서와 같이 웹 페이지에서 각 영역 태그가 사용자에게 필요한지 분석한다.
이후, 본문 영역 설정시, 본문 추출을 위한 애플리케이션은 시작 영역을 설정한다.
상기 본문 추출을 위한 애플리케이션은 시작 노드가 소속된 가장 인접한 영역 태그를 시작 영역으로 인식한다. 가장 인접한 영역 태그는 DOM 에서 시작 노드의 조상들 중, 가장 가까운 영역 태그를 검색하는 방법으로 찾을 수 있다.
만약, 본문 추출을 위한 애플리케이션이 시작 영역을 찾았다면, 이와 함께 본문 영역을 구성할 본문 구성 영역들을 결정하기 위해 시작영역의 x좌표(DivS.posX)와 너비(DivS.width)를 저장한다.
여기서, 시작영 역을 설정하는 이유는 하나의 본문이 여러 개의 영역 태그로 나뉘어 있을 수 있기 때문이다. 예를 들어, 도 7은 본문이 하나의 영역 태그로 구성되었지만, 실제 웹페이지는 하나의 본문이 수많은 영역 태그로 분리된 경우가 있을 수 있다.
특히, 이미지나 주석 등을 포함하는 웹페이지에는 셀 수 없이 많은 영역 태그들이 존재하기 때문에, 시작 영역을 기준으로 다른 영역태그들을 취합함으로써 하나의 본문 구성이 가능하다.
이후,본문 영역 설정시, 본문 추출을 위한 애플리케이션은 본문 영역 설정을 위한 본문 구성 영역을 설정한다. 웹페이지의 본문은 일반적으로 유사한 x 좌표와 너비를 가지도록 배치되어 상위에서 하위로의 종 스크롤을 이용해서 전체 내용을 디스플레이할 수 있으므로, 본문 추출을 위한 애플리케이션은 x 좌표와 너비를 기준으로 본문 구성 영역을 설정한다.
본문 구성 영역을 설정하기 전에 본문 구성 영역을 검색할 범위를 설정해야하며 본문 구성 영역을 검색할 범위에 포함되는 영역을 분석 대상 영역이라 칭한다. 분석 대상 영역의 조건은 다음과 같은 좌표, 크기 조건을 만족하면서 시작 영역에서 가장 인접한 조상 노드가 그 조건이 될 수 있다.
좌표 조건은 분석 대상 영역이 시작 영역에서 크게 벗어나지 않는 좌표에 위치하는 것을 의미한다. 구체적인 좌표 조건은 하기와 같다.
좌표조건 1) DivB(분석 대상 영역).posX > DivS(시작영역).posX * 소정상수1
좌표조건 2) DivB(분석 대상 영역).posX < DivS(시작영역).posX * 소정상수2
상기 소정상수 1, 2 는 실험 또는 이론치 등에 의해 결정될 수 있다.
크기 조건은 분석 대상 영역이 시작 영역의 크기와 유사한 크기를 갖음을 의미한다.
크기조건 1) DivB(분석 대상 영역).width > DivS(시작영역).width * 소정상수3.
크기조건 2) DivB(분석 대상 영역).width < DivS(시작영역).posX * 소정상수4.
상기 소정상수 3, 4는 실험 또는 이론치 등에 의해 결정될 수 있다.
만약 조상 영역들을 탐지하는 중, Article 태그 또는 Body 태그가 발견되면,이러한 태그들을 분석 대상 영역으로 설정한다. 여기서, Article 태그는 HTML5 에서 본문을 지칭하는 태그이며 Body 태그는 화면에 표시되는 태그 중 최상위 태그이다.
이후, 본문 추출을 위한 애플리케이션은 본문 구성 영역들을 검색한다. 상기 본문 구성 영역은 앞서 설정한 분석 대상 영역 내의 모든 영역 태그를 나타내며 불필요한 영역 제거에서 제거되지 않는다면 해당 영역을 본문 영역으로 판단한다.
도 8에서는 시작영역과 유사한 x 좌표와 너비를 가지는 영역 태그가 존재하지 않으므로 시작 영역이 곧 본문 영역에 해당함을 알 수 있다. 도 9에서는 여러 개의 영역 태그들이 유사한 x 좌표와 너비를 가지고 있으므로 여러 개의 영역 태그들이 하나의 본문 영역을 형성함을 알 수 있다.
도 9에서는 여러 개의 영역 태그에서 불필요한 영역이 존재하고, 이러한 영역을 제외하면 영역 태그들은 도 10과 같이 붉게 표시됨을 알 수 있다.
전술한 본문 영역 설정에서는 본문 영역을 구성할 때에 시작 영역(상기 도 10의 영역(Div) 2)의 x좌표와 너비에 유사한 영역 태그들을 본문 영역에 포함시키는 데, 상기 도 10의 시작영역(영역 2)과 본문 영역 내의 기타 영역 태그의 x좌표나 너비는 서로 유사하지 않은 것으로 판단될 수 있다.
하지만, 이는 인라인(inline) / 블록(block) 요소의 차이점일 뿐, 실제로 DOM에서 영역 1, 2, 3의 영역은 도 9와 같이 초록색으로 표시된 박스이다.
HTML에서 텍스트는 인라인 태그로써 영역 내에 블록 요소가 플로팅(floating) 속성을 가지고 존재하면 해당 블록 요소의 영역을 제외한 부분에 맞게 컨텐츠를 배치한다. 상기 도 10의 영역 3을 예로 들면 다음 표와 같다.
<div id="영역3" width=400>
<div id="관련링크" width=100> ...관련 링크들... </div>
<p>....기사본문......</p>// 영역 3의 너비가 400일때, 관련링크의 너비 100을 제외
<p>....기사본문......</p>//한 우측에 기사 본문들이 배치된다.
</div>
상기 표를 참고하면, 영역 3의 너비가 400일때, 관련링크의 너비 100을 제외한 우측에 기사 본문들이 배치되므로, 화면에서 표시되는 것과는 달리, 실제 DOM이 가지는 영역 3의 x좌표와 너비는 시작영역과 유사함을 알 수 있다.
이후, 본 발명의 본문 추출을 위한 애플리케이션은 불필요한 영역들을 제거한다.
상기 도 10 에서와 같이 링크들이나 광고를 본문 영역에 포함될 수 있다. 하지만 이러한 링크 및 광고는 사용자에게 본문만을 보이기 위해서는 불필요하고 이에 따라 이러한 영역들의 제거가 필요하다.
본 발명에서 불필요한 링크 및 광고(컨텐츠라 칭하기로 한다)를 판별 및 처리 방향은 다음과 같다.
먼저, 화면에 표시되지만 불필요한 태그, 예를 들어, iframe은 Google AD와 같이 외부 스폰서의 광고 템플릿을 로딩하기 위해서 사용되는 태그이기 때문에 본문에 불필요하므로 삭제한다.
하나의 영역 내에서 링크된 컨텐츠(a 태그에 의한)의 수가 링크되지 않은 일반 컨텐츠에 비해서 지나치게 많은 경우는 본문 추출을 위한 애플리케이션은 다음과 같이 처리한다.
링크 컨텐츠는 본문 안에도 빈번히 사용되지만 본문 내에서 사용되는 링크 컨텐츠의 숫자는 링크되지 않은 컨텐츠에 비해서 월등히 적다. 하지만, 대부분의 광고는 광고에 관심있는 사용자가 클릭할 때에 대상 상품을 판매하는 또는 홍보하는 웹사이트로 링크되어 있는 경우가 대부분이므로 이를 바탕으로 일정 값을 임계값 으로 설정해서 하나의 영역 안에서 링크 컨텐츠의 비율이 상기 임계값을 넘는 경우 불필요한 영역으로 간주하고 이 영역을 사용자에게 표시할 내용에서 제거한다. 즉, 특정 조건을 만족하면 광고가 아닌 것으로 판단하여 본문으로 인정한다.
예를 들면, 광고 제거 조건을 DivBn.linkTextLength * 소정 상수 5 < DivBn.normalTextLength 와 같이 설정하고, 조건이 만족되지 않으면 광고 컨텐츠라고 판단한다.
또한 각 영역은 최소한의 글자수 또는 일정 크기 이상의 이미지를 가져야만 본문 추출을 위한 애플리케이션이 본문으로 인정한다(예를 들어, 일정 크기 이상의 이미지라 함은 "시작영역" 너비의 반을 의미할 수 있다)
예를 들어, 본문 인정 최소 조건으로 DivBn.normalTextLength > 소정 상수 6 또는 DivBn.ImageWidth > DivS.width / 2 일 경우, 본문으로 인정할 수 있다.
또한, 보이지 않는 태그에 대한 처리는 다음과 같이 수행한다.
웹페이지에는 표시되지 않지만, 본문 영역 내에는 수많은 태그들이 존재한다. 하지만 이러한 태그들은 컨텐츠의 속성(색상, 폰트 등)을 정의하거나 스크립트와 관련되어 본문의 내용을 구성하는 데에는 불필요한 태그들이 많다. 즉, 불필요한 태그는 화면에 표시되지 않는 태그와 사용자 인터페이스 컨트롤 구성 태그이다.
이에 따라, script, link, style, html, noscript 등과 같은 표시되지 않는 태그와 form, select, label, input, 등과 같은 사용자 인터페이스 컨트롤 구성 태그를 삭제한다.
이후, 본문 추출을 위한 애플리케이션은 본문 추출 결과를 표시할 것인지를 결정한다.
상기 과정을 수행한 결과 컨텐츠가 사용자에게 표시되어야 하는 본문인지, 아니면 그냥 필요없는 값에 불과한지를 판별하는 기준으로, 그래서 특정 수(소정 상수 7)이하의 컨텐츠가 추출된 경우는 본문 추출이 실패한 것으로 간주하고 결과를 디스플레이하지 않는다.
즉, 전술한 본문 추출 과정 수행 후의 본문을 Article이라 칭하고 이 Article의 텍스트 길이가 소정 상수 이상 일 경우, 추출된 본문을 디스플레이한다.
전술한 소정 1-7은 실험 또는 이론치 등에 의해 결정될 수 있다.
도 11은 본 발명의 실시 예에 따른 본문 추출 과정을 도시한 흐름도이다.
상기 도 11을 참조하면, 먼저 사용자의 본문 추출을 위한 좌표가 설정된 경우(1105 단계), 즉, 사용자가 본문을 추출할 위치를 디스플레이 화면 상에서 결정하면, 본 발명의 본문 추출을 위한 애플리케이션은 사작 노드를 결정한다(1110 단계),
이후, 상기 본문 추출을 위한 애플리케이션은 영역 태그를 단위로, 각 영역 태그가 사용자에게 필요한지를 분석한다(1115 단계),
이후, 상기 본문 추출을 위한 애플리케이션은 시작 영역을 설정하고(1120 단계), 본문 구성 영역 검색을 위한 분석 대상 영역 설정 및 검색을 수행한다(1125 단계).
이후, 상기 본문 추출을 위한 애플리케이션은 불필요한 영역들을 제거하고(1130 단계), 최종 추출된 컨텐츠가 디스플레이할 수준인지, 즉, 디스플레이하기 위한 조건이 만족되는지를 결정한다(1135 단계)
만약, 디스플레이하기 위한 조건이 만족되는 경우(1135 단계), 최종 컨텐츠, 즉, 최종으로 결정된 본문을 디스플레이한다(1140 단계).
만약, 디스플레이하기 위한 조건이 만족되지 않는 경우(1135 단계), 최종 컨텐츠, 즉, 최종으로 결정된 본문을 무시하고 본 발명을 종료한다(1145 단계).
한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능하다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.

Claims (20)

  1. 웹 페이지에서 본문 추출을 위한 방법에 있어서,
    사용자가 지정한 좌표를 기반으로 시작 노드를 결정하는 과정과,
    상기 시작 노드를 기반으로 본문 영역을 결정하는 과정과,
    결정된 본문 영역을 디스플레이하는 과정을 포함하는 것을 특징으로 하는 방법.
  2. 제 1항에 있어서,
    결정된 본문 영역을 디스플레이하는 과정은,
    상기 결정된 본문영역이 디스플레이되기 위한 조건이 만족되는 경우, 결정된 본문 영역을 디스플레이하는 과정을 포함하는 것을 특징으로 하는 방법.
  3. 제 2항에 있어서,
    상기 결정된 본문 영역이 디스플레이되기 위한 조건은,
    결정된 본문 영역이 소정 수 이상의 텍스트를 포함하는 것임을 특징으로 하는 방법.
  4. 제 1항에 있어서,
    상기 본문 영역을 결정하는 과정은,
    영역 태그가 사용자에게 필요한지 결정하는 과정과,
    시작 영역을 설정하는 과정과,
    분석 대상 영역을 결정하여 본문 구성 영역을 설정하는 과정과,
    상기 본문 구성 영역을 기반으로 상기 본문 영역에서 불필요한 영역을 제거하는 과정을 포함하는 것을 특징으로 하는 방법.
  5. 제 4항에 있어서,
    상기 분석 대상 영역은 좌표 및 크기 조건을 만족하면서 상기 시작 영역에서 가장 인접한 조상 노드의 영역인 것을 특징으로 하는 방법.
  6. 제 5항에 있어서,
    상기 좌표 조건은 상기 분석 대상 영역이 상기 시작 영역에서 소정 범위 이내인 것을 특징으로 하는 방법.
  7. 제 5항에 있어서,
    상기 크기 조건은 상기 분석 대상 영역이 상기 시작 영역의 크기와 소정 범위 이내의 크기를 가지는 것임을 특징으로 하는 방법.
  8. 제 4항에 있어서,
    상기 불필요한 영역은 디스플레이 화면에는 표시되지만 불필요한 영역, 소정 수 이상의 링크된 컨텐츠를 가지는 영역, 소정 수 미만의 글자 수를 가지는 영역, 소정 크기 미만의 이미지를 가지는 영역 중 적어도 하나인 것을 특징으로 하는 방법.
  9. 제 4항에 있어서,
    상기 시작 영역은 상기 시작 노드가 소속된 가장 인접한 영역인 것을 특징으로 하는 방법.
  10. 제 4항에서 있어서,
    상기 본문 구성 영역은 본문 영역에서 시작 영역이 아닌 영역인 것을 특징으로 하는 방법.
  11. 터치 감지 디스플레이;
    하나 이상의 프로세서;
    메모리; 및
    상기 메모리에 저장되어 있으며 상기 하나 이상의 프로세서에 의하여 실행되도록 구성되는 하나 이상의 프로그램을 포함하는 전자 장치로서,
    상기 프로그램은
    사용자가 지정한 좌표를 기반으로 시작 노드를 결정하고,
    상기 시작 노드를 기반으로 본문 영역을 결정하고,
    결정된 본문 영역을 디스플레이하는 명령어를 포함하는 전자 장치.
  12. 제 11항에 있어서,
    상기 하나 이상의 프로세서는,
    결정된 본문 영역을 디스플레이할 시,
    상기 결정된 본문영역이 디스플레이되기 위한 조건이 만족되는 경우, 결정된 본문 영역을 디스플레이하는 것을 특징으로 하는 전자 장치.
  13. 제 12항에 있어서,
    상기 결정된 본문 영역이 디스플레이되기 위한 조건은,
    결정된 본문 영역이 소정 수 이상의 텍스트를 포함하는 것임을 특징으로 하는 전자 장치.
  14. 제 11항에 있어서,
    상기 하나 이상의 프로세서는,
    상기 본문 영역을 결정할 시,
    영역 태그가 사용자에게 필요한지 결정하고,
    시작 영역을 설정하고,
    분석 대상 영역을 결정하여 본문 구성 영역을 설정하고,
    상기 본문 구성 영역을 기반으로 상기 본문 영역에서 불필요한 영역을 제거하는 것을 특징으로 하는 전자 장치.
  15. 제 14항에 있어서,
    상기 분석 대상 영역은 좌표 및 크기 조건을 만족하면서 상기 시작 영역에서 가장 인접한 조상 노드의 영역인 것을 특징으로 하는 전자 장치.
  16. 제 15항에 있어서,
    상기 좌표 조건은 상기 분석 대상 영역이 상기 시작 영역에서 소정 범위 이내인 것을 특징으로 하는 전자 장치.
  17. 제 15항에 있어서,
    상기 크기 조건은 상기 분석 대상 영역이 상기 시작 영역의 크기와 소정 범위 이내의 크기를 가지는 것임을 특징으로 하는 전자 장치.
  18. 제 14항에 있어서,
    상기 불필요한 영역은 디스플레이 화면에는 표시되지만 불필요한 영역, 소정 수 이상의 링크된 컨텐츠를 가지는 영역, 소정 수 미만의 글자 수를 가지는 영역, 소정 크기 미만의 이미지를 가지는 영역 중 적어도 하나인 것을 특징으로 하는 전자 장치.
  19. 제 14항에 있어서,
    상기 시작 영역은 상기 시작 노드가 소속된 가장 인접한 영역인 것을 특징으로 하는 전자 장치.
  20. 제 14항에서 있어서,
    상기 본문 구성 영역은 본문 영역에서 시작 영역이 아닌 영역인 것을 특징으로 하는 전자 장치.
KR1020120023988A 2012-03-08 2012-03-08 웹 페이지 상에서 본문 추출을 위한 방법 및 장치 KR101990450B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020120023988A KR101990450B1 (ko) 2012-03-08 2012-03-08 웹 페이지 상에서 본문 추출을 위한 방법 및 장치
US13/791,183 US9678932B2 (en) 2012-03-08 2013-03-08 Method and apparatus for extracting body on web page
CN201310074990.9A CN103309924B (zh) 2012-03-08 2013-03-08 用于提取网页上主体的方法和设备
EP20130158450 EP2639717A3 (en) 2012-03-08 2013-03-08 Method and apparatus for extracting body on web page

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120023988A KR101990450B1 (ko) 2012-03-08 2012-03-08 웹 페이지 상에서 본문 추출을 위한 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20130102839A true KR20130102839A (ko) 2013-09-23
KR101990450B1 KR101990450B1 (ko) 2019-06-18

Family

ID=47900694

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120023988A KR101990450B1 (ko) 2012-03-08 2012-03-08 웹 페이지 상에서 본문 추출을 위한 방법 및 장치

Country Status (4)

Country Link
US (1) US9678932B2 (ko)
EP (1) EP2639717A3 (ko)
KR (1) KR101990450B1 (ko)
CN (1) CN103309924B (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170070782A (ko) * 2015-12-14 2017-06-22 삼성전자주식회사 전자 장치에서 웹 브라우저의 상태 정보를 공유하기 위한 장치 및 방법
WO2020175845A1 (ko) * 2019-02-26 2020-09-03 엘지전자 주식회사 디스플레이 장치 및 그의 동작 방법
KR20230027605A (ko) * 2021-08-19 2023-02-28 (주)복부인 부동산 계약서 자동 분석 및 관리 장치

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9448979B2 (en) * 2013-04-10 2016-09-20 International Business Machines Corporation Managing a display of results of a keyword search on a web page by modifying attributes of DOM tree structure
CN104615728B (zh) * 2015-02-09 2018-02-23 浪潮集团有限公司 一种网页正文提取方法及装置
US10203852B2 (en) * 2016-03-29 2019-02-12 Microsoft Technology Licensing, Llc Content selection in web document
US10521106B2 (en) 2017-06-27 2019-12-31 International Business Machines Corporation Smart element filtering method via gestures
CN110381118B (zh) * 2019-06-19 2022-03-04 平安普惠企业管理有限公司 页面数据传输的控制方法和相关设备
US20240086616A1 (en) * 2022-09-12 2024-03-14 Google Llc Reading assistant in a browser environment
CN117077619B (zh) * 2023-10-13 2024-03-29 科技日报社 电子报版面解析方法、装置、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080307328A1 (en) * 2007-06-08 2008-12-11 Timothy Gene Hatcher Methods and systems for editing of web pages in an application capable of displaying web page content
US20110302510A1 (en) * 2010-06-04 2011-12-08 David Frank Harrison Reader mode presentation of web content
WO2012012917A1 (en) * 2010-07-30 2012-02-02 Hewlett - Packard Development Company, L.P. Selecting content within a web page

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6449636B1 (en) * 1999-09-08 2002-09-10 Nortel Networks Limited System and method for creating a dynamic data file from collected and filtered web pages
US7103838B1 (en) * 2000-08-18 2006-09-05 Firstrain, Inc. Method and apparatus for extracting relevant data
US6920609B1 (en) 2000-08-24 2005-07-19 Yahoo! Inc. Systems and methods for identifying and extracting data from HTML pages
US7073122B1 (en) 2000-09-08 2006-07-04 Sedghi Ali R Method and apparatus for extracting structured data from HTML pages
US7051276B1 (en) * 2000-09-27 2006-05-23 Microsoft Corporation View templates for HTML source documents
WO2002033584A1 (en) 2000-10-19 2002-04-25 Copernic.Com Text extraction method for html pages
US7065707B2 (en) * 2002-06-24 2006-06-20 Microsoft Corporation Segmenting and indexing web pages using function-based object models
US20040158799A1 (en) 2003-02-07 2004-08-12 Breuel Thomas M. Information extraction from html documents by structural matching
JP5339667B2 (ja) * 2005-06-10 2013-11-13 キヤノン株式会社 情報処理装置及びその方法
US8255793B2 (en) * 2008-01-08 2012-08-28 Yahoo! Inc. Automatic visual segmentation of webpages
US8448074B2 (en) * 2009-05-01 2013-05-21 Qualcomm Incorporated Method and apparatus for providing portioned web pages in a graphical user interface
KR101640051B1 (ko) * 2009-10-30 2016-07-15 라쿠텐 인코포레이티드 특유 콘텐츠 판정 장치, 특유 콘텐츠 판정 방법, 기록 매체, 콘텐츠 생성 장치 및 관련 콘텐츠 삽입 장치
KR101701839B1 (ko) 2010-07-13 2017-02-02 엘지전자 주식회사 이동 단말기 및 그 제어 방법
JP5801545B2 (ja) * 2010-10-15 2015-10-28 キヤノン株式会社 情報処理装置、その情報処理方法及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080307328A1 (en) * 2007-06-08 2008-12-11 Timothy Gene Hatcher Methods and systems for editing of web pages in an application capable of displaying web page content
US20110302510A1 (en) * 2010-06-04 2011-12-08 David Frank Harrison Reader mode presentation of web content
WO2012012917A1 (en) * 2010-07-30 2012-02-02 Hewlett - Packard Development Company, L.P. Selecting content within a web page

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170070782A (ko) * 2015-12-14 2017-06-22 삼성전자주식회사 전자 장치에서 웹 브라우저의 상태 정보를 공유하기 위한 장치 및 방법
WO2020175845A1 (ko) * 2019-02-26 2020-09-03 엘지전자 주식회사 디스플레이 장치 및 그의 동작 방법
US11978448B2 (en) 2019-02-26 2024-05-07 Lg Electronics Inc. Display device and method of operating the same
KR20230027605A (ko) * 2021-08-19 2023-02-28 (주)복부인 부동산 계약서 자동 분석 및 관리 장치

Also Published As

Publication number Publication date
CN103309924B (zh) 2018-02-13
EP2639717A3 (en) 2015-05-13
EP2639717A2 (en) 2013-09-18
US9678932B2 (en) 2017-06-13
CN103309924A (zh) 2013-09-18
US20130238978A1 (en) 2013-09-12
KR101990450B1 (ko) 2019-06-18

Similar Documents

Publication Publication Date Title
KR101990450B1 (ko) 웹 페이지 상에서 본문 추출을 위한 방법 및 장치
US8908973B2 (en) Handwritten character recognition interface
CN104272240B (zh) 用于修改在用户界面上的虚拟键盘的系统和方法
USRE46139E1 (en) Language input interface on a device
US9164658B2 (en) Flexible selection tool for mobile devices
KR101541147B1 (ko) 동적 가상 입력 디바이스 구성
US9304668B2 (en) Method and apparatus for customizing a display screen of a user interface
TWI438675B (zh) 提供情境感知援助說明之方法、裝置及電腦程式產品
CN101730878B (zh) 用于web页面的触摸事件模型
WO2017012437A1 (zh) 网页批注显示方法、装置及移动终端
US20120102401A1 (en) Method and apparatus for providing text selection
US20160162162A1 (en) Text Processing Method and Touchscreen Device
CN101763218A (zh) 一种手持设备输入方法
CN103365356A (zh) 在电子设备上进行显示的方法和装置
WO2017084452A1 (zh) 图形界面中标签页的处理方法和装置
CN106325687B (zh) 一种调用程序的方法及终端
US20120032983A1 (en) Information processing apparatus, information processing method, and program
CN106599246B (zh) 一种显示内容的拦截方法、移动终端及控制服务器
KR20140120972A (ko) 터치스크린을 가지는 전자 장치에서 텍스트 입력하는 방법 및 장치
CN106933481B (zh) 一种屏幕滚动方法及装置
KR102319234B1 (ko) 디스플레이 장치 및 이의 제어 방법
US10963143B2 (en) Data editing method and apparatus
US9377949B2 (en) Method and terminal device for selecting character
CN107765980A (zh) 输入方法及装置、终端设备和计算机可读存储介质
JP2016085547A (ja) 電子機器および方法

Legal Events

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