KR20120042529A - 웹 페이지 크롤링 방법 및 장치 - Google Patents

웹 페이지 크롤링 방법 및 장치 Download PDF

Info

Publication number
KR20120042529A
KR20120042529A KR1020100104246A KR20100104246A KR20120042529A KR 20120042529 A KR20120042529 A KR 20120042529A KR 1020100104246 A KR1020100104246 A KR 1020100104246A KR 20100104246 A KR20100104246 A KR 20100104246A KR 20120042529 A KR20120042529 A KR 20120042529A
Authority
KR
South Korea
Prior art keywords
web
web address
page
crawling
content
Prior art date
Application number
KR1020100104246A
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 KR1020100104246A priority Critical patent/KR20120042529A/ko
Priority to US13/116,785 priority patent/US20120102019A1/en
Publication of KR20120042529A publication Critical patent/KR20120042529A/ko

Links

Images

Classifications

    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

루트 웹 주소 리스트를 획득하는 과정, 루트 웹 주소에 링크된 웹 주소 리스트를 획득하는 과정, 웹 주소 리스트에 기반한 각 웹 주소의 페이지에 대한 콘텐츠를 평가하는 과정, 웹 주소의 페이지에 대한 콘텐츠 평가에 따라 크롤링 깊이를 조절하는 과정, 조절된 크롤링 깊이에 따라 웹 페이지들을 크롤링 하는 과정을 포함하는 웹 페이지 크롤링 방법 및 장치를 개시하고 있다.

Description

웹 페이지 크롤링 방법 및 장치{Method and apparatus for crawling web page}
본 발명은 웹 검색 시스템에 관한 것이며, 특히 특정 정보를 갖는 웹 페이지들을 크롤링하는 웹 페이지 크롤링 방법 및 장치에 관한 것이다.
인터넷 및 다른 네트워크를 통하여 사용자는 많은 수의 컴퓨터간에 분산된 대량의 정보로의 엑세스를 획득해 왔다. 방대한 양의 정보에 엑세스하기 위해 사용자는 통상적으로 사용자 브라우저를 실행시켜 검색 엔진을 엑세스한다. 검색 엔진은 인터넷 또는 다른 네트워크를 통하여 이용될 수 있는 하나 이상의 정보 소스를 반환함으로써 입력 사용자 질의에 응답한다.
통상적으로 웹 공간에 존재하는 웹 페이지들은 검색 엔진과 같은 부가적인 서비스에서 사용될 수 있는 유용한 자원들이다.
크롤러는 이러한 웹 공간에 존재하는 유용한 자원들을 효과적으로 모으는 작업을 수행한다.
종래의 크롤러는 지오 태깅된 사진 정보와 같은 특정 정보를 가지고 있는 웹 페이지를 크롤링하기 위해서 추가적인 작업을 해야 한다. 즉, 종래에는 방대한 인터넷 공간에서 모든 웹 페이지들을 방문 한 후 이미지들마다 지오 태깅(geo tagging)이 되어 있는지 확인해야 하므로 크롤링 속도가 현저히 느려진다.
본 발명이 해결하고자 하는 과제는 특정 정보를 가지고 있는 웹 페이지들에 대한 크롤링(crawling) 속도를 향상시키는 적응적 웹 페이지 크롤링 방법 및 장치를 제공하는 데 있다.
상기의 과제를 해결하기 위하여, 본 발명의 일실시예에 따른 웹 페이지 크롤링 방법에 있어서,
루트 웹 주소 리스트를 획득하는 과정;
상기 루트 웹 주소에 링크된 웹 주소 리스트를 획득하는 과정;
상기 웹 주소 리스트에 기반한 각 웹 주소의 페이지에 대한 콘텐츠를 평가하는 과정;
상기 웹 주소의 페이지에 대한 콘텐츠 평가에 따라 크롤링 깊이를 조절하는 과정;
상기 조절된 크롤링 깊이에 따라 웹 페이지들을 크롤링 하는 과정을 포함한다.
상기 크롤링된 웹 페이지의 웹 주소를 상기 루트 웹 주소 리스트에 포함하는 과정을 더 포함하는 것을 특징으로 한다.
상기 크롤링된 웹 페이지들을 사용자에 의해 요청된 특정 정보에 근접한 우선 순위대로 단말기에 제공하는 과정을 더 포함하는 것을 특징으로 한다.
상기 크롤링된 웹 페이지들을 사용자에 의해 요청된 특정 정보에 근접한 우선 순위대로 단말기에 제공하는 과정을 더 포함하는 것을 특징으로 한다.
상기 크롤링된 웹 페이지 및 웹 주소 정보를 특정 정보에 기반하여 카테고리별로 분류하여 단말기에 제공하는 과정을 도 포함하는 것을 특징으로 한다.
상기 웹 주소 리스트 획득 과정은
최대 크롤링 깊이에 기반하여 방문할 웹 주소 리스트를 획득하는 과정; 및
획득된 웹 주소 리스트를 데이터 베이스 포맷으로 변화하고 저장하는 과정을 구비하는 것을 특징으로 한다.
상기 웹 주소의 페이지에 대한 콘텐츠 평가 과정은,
저장된 웹 주소 리스트를 기반으로 현재 방문할 웹 주소 리스트 획득 및 현재 크롤링 깊이 정보를 저장하는 과정;
상기 획득된 웹 주소 리스트에 포함된 웹 주소를 방문하여 해당 웹 주소의 페이지에 대한 콘텐츠를 획득하는 과정;
상기 획득된 웹 주소의 페이지의 콘텐츠에 특정 정보의 존재 여부를 평가하는 과정을 구비하는 것을 특징으로 한다.
상기 크롤링 깊이 조절 과정은
상기 웹 주소의 페이지에 대한 콘텐츠의 평가에 따라 해당 웹 주소의 페이지를 필터링하는 과정;
상기 웹 주소 페이지의 필터링 과정을 통해 특정 정보를 포함한 웹 페이지를 획득하는 속도값을 평가하는 과정;
상기 획득된 웹 페이지의 콘텐츠를 파싱하여 콘텐츠와 웹 주소 정보를 저장하고 업데이트하는 과정;
상기 특정 정보를 포함한 웹 페이지를 획득하는 속도값에 기반하여 크롤링 깊이를 조절하는 과정을 포함하는 것을 특징으로 한다.
상기 웹 페이지를 획득하는 속도값은 특정 정보를 포함한 웹 주소 페이지를 찾는 속도임을 특징으로 한다.
상기 웹 페이지를 획득하는 속도값이 정해진 값이 될 때 까지 크롤링 깊이를 조절하는 것임을 특징으로 한다.
상기의 다른 과제를 해결하기 위하여, 본 발명의 일실시예에 따른 웹 페이지 크롤링 방법에 있어서,
사용자 위치를 검출하는 과정;
상기 검출된 사용자 위치 정보에 기반한 크롤링할 루트 웹 주소 리스트를 획득하는 과정;
상기 획득된 루트 웹 주소에 매핑된 웹 주소 리스트를 획득하는 과정;
상기 웹 주소 리스트에 기반하여 웹 주소 페이지의 콘텐츠를 평가하는 과정;
상기 평가된 웹 주소의 페이지에 대한 콘텐츠 평가에 따라 크롤링 깊이를 조절하는 과정;
상기 조절된 크롤링 깊이에 따라 웹 페이지를 크롤링하는 과정을 포함한다.
상기의 또 다른 과제를 해결하기 위하여, 본 발명의 일실시예에 따른 웹 페이지 크롤링 장치에 있어서,
인터넷 또는 단말기를 통해 루트 웹 주소 리스트 및 그 루트 웹 주소에 링크된 웹 주소 리스트를 획득하는 웹 주소 획득부;
상기 웹 주소 획득부에서 획득된 웹 주소 리스트들을 기반으로 해당 웹 주소들을 방문하여 각 웹 주소 페이지에 대한 콘텐츠를 획득하고, 그 콘텐츠내에 특정 정보가 존재하는가를 평가하는 웹 페이지 평가부;
상기 웹 페이지 평가부에서 평가된 결과에 따라 크롤링 깊이를 조절하는 크롤링 깊이 조절부;
상기 크롤링 깊이 조절부에서 조절된 크롤링 깊이에 따라 웹 페이지들을 크롤링하는 크롤링부를 포함한다.
상기 웹 페이지 평가부는 특정 정보를 갖는 웹 페이지를 필터링하는 것임을 특징으로 한다.
상기 웹 주소 획득부에서 획득된 웹 주소 리스트를 저장하고, 크롤링부에서 크롤링된 웹 페이지의 콘텐츠와 웹 주소 정보를 저장하는 데이터베이스를 더 포함하는 것을 특징으로 한다.
상기 크롤링부에서 크롤링된 웹 페이지를 우선 순위 또는 설정된 기준으로 사용자에게 제공하는 웹 제공부를 더 포함하는 것을 특징으로 한다.
도 1은 본 발명의 실시예에 따른 웹 검색 시스템의 개관을 도시하는 블록도이다.
도 2는 도 1의 웹 검색 서버의 상세도이다.
도 3은 본 발명의 일 실시예에 따른 웹 페이지 크롤링 방법을 보이는 전체 흐름도 이다.
도 4는 본 발명의 일 실시예에 따른 웹 페이지 크롤링 방법을 보이는 상세 흐름도이다.
도 5는 도 4의 동작 흐름도를 설명하기 위한 크롤링 깊이에 따른 웹 페이지들의 구조도이다.
도 6은 본 발명의 다른 실시예에 따른 웹 페이지 크롤링 방법을 보이는 흐름도이다.
도 7은 본 발명에 따라 크롤링된 웹 페이지를 사용자에게 제공하는 일 실시예이다.
이하 첨부된 도면을 참조로하여 본 발명의 바람직한 실시예를 설명하기로 한다.
도 1은 본 발명의 실시예에 따른 웹 검색 시스템의 개관을 도시하는 블록도이다.
도 1의 웹 검색 시스템은 네트워크(100)를 통해 웹 검색 서버부(120)에 접속된 복수개의 단말기1, 2(130, 140)을 포함할 수 있다.
웹 검색 서버(120)는 웹 크롤러라는 소프트웨어를 이용하여 웹 사이트들(150, 160, 170)의 모든 웹 페이지의 콘텐츠들을 수집하고, 웹 페이지들에 포함된 콘텐츠들로부터 특정 정보를 갖는 URL과 콘텐츠를 크롤링 한다.
특히, 웹 검색 서버(120)는 단말기1, 2(130, 140)로부터 특정 지역에 관련된 웹 검색을 요청 받으면 인터넷 또는 단말기1, 2(130, 140)를 통해 루트 웹 주소 리스트를 획득하고, 루트 웹 주소에 링크된 웹 주소 리스트를 획득하고, 웹 주소 리스트에 기반한 각 웹 주소의 페이지에 대한 콘텐츠를 평가하고, 평가 결과에 따라 크롤링 깊이를 조절하여 웹 페이지들을 크롤링한다. 이때 웹 주소는 URL을 이용한다.
단말기1, 2(130, 140)는 웹 검색 서버(120)로부터 수신된 특정 정보를 갖는 웹 페이지들의 웹 주소 스트를 화면에 표시하고, 그 웹 페이지들의 웹 리스트로부터 선택된 웹 주소의 페이지를 화면에 브라우징(browsing)한다.
단말기1, 2(130, 140)는 내부에 정보 소스 및 웹 크롤러를 내장하고 있으며, 서로간에 정보 소스를 주고받는다. 즉, 단말기1, 2(130,140)은 각각 웹 크롤러를 이용하여 상대방 단말기나 인터넷을 통해 URL 리스트를 획득하고, 그 URL 리스트를 이용하여 크롤링 깊이 조절에 따른 크롤링 작업을 수행한다.
도 2는 도 1의 웹 검색 서버(120)의 상세도이다.
도 2의 웹 검색 서버(120)는 통신부(200), 웹 주소 획득부(210), 웹 페이지 평가부(220), 크롤링 깊이 조절부(230), 크롤링부(240), 웹 제공부(250)를 구비한다.
통신부(200)는 네트워크(100)를 통해 단말기1, 2(130, 140)과 유무선 통신을 수행한다.
웹 주소 획득부(210)는 인터넷 또는 단말기를 통해 루트 URL 리스트 및 그 루트 URL에 링크된 URL 리스트를 획득한다.
웹 페이지 평가부(220)는 웹 주소 획득부(210)에서 획득된 URL 리스트들을 기반으로 해당 URL들을 방문하여 각 URL 페이지에 대한 콘텐츠를 획득하고, 그 콘텐츠내에 지오 태깅된 사진 정보와 같은 특정 정보가 존재하는가를 평가하고, 그 특정 정보 존재 여부에 따라 해당 URL의 페이지를 필터링 한다.
크롤링 깊이 조절부(230)는 웹 페이지 평가부(220)에서 평가된 결과에 따라 크롤링 깊이를 조절한다.
크롤링부(240)는 크롤링 깊이 조절부(230)에서 조절된 크롤링 깊이에 따라 특정 정보를 갖는 웹 페이지들을 크롤링한다.
웹 제공부(250)는 사용자의 요청에 따라 크롤링부(240)에서 크롤링된 웹 페이지를 우선 순위 또는 다양한 기준으로 가공하여 단말기1, 2(130, 140)에게 제공한다.
데이터베이스부(260)는 URL 획득부(210)에서 획득된 URL 리스트를 저장하고, 크롤링부(240)에서 크롤링된 웹 페이지의 콘텐츠와 URL 정보를 저장한다. 데이터베이스부(260)로서는, 예를 들면 하드 디스크 등의 자기 기록매체나 EEPROM, 플래시 메모리 등의 불휘발성 메모리를 들 수 있지만, 상기에 한정되지는 않는다.
도 3은 본 발명의 일실시예에 따른 웹 페이지 크롤링 방법을 보이는 전체 흐름도이다.
먼저, 사용자 단말기 또는 서버 운용자의 요청에 의해 루트 URL 리스트를 획득한다(310 과정).
이어서, 인터넷 또는 단말기로부터 최대 크롤링 깊이에 기반하여 루트 URL에 링크된 모든 URL 리스트를 획득한다(320 과정).
이어서, URL 리스트에 기반하여 현재 크롤링 깊이에 해당하는 URL 페이지의 콘텐츠에 지오 태깅된 사진 정보와 같은 특정 정보가 존재하는가를 평가한다(330 과정).
이어서, URL 페이지에 대한 콘텐츠 평가에 따라 크롤링 깊이를 동적으로 조절한다(340 과정). 이때 특정 정보를 갖는 웹 페이지들을 크롤링하는 속도가 감소하면 크롤링 깊이를 감소시키고, 특정 정보를 갖는 웹 페이지들을 크롤링하는 속도가 증가하면 크롤링 깊이를 증가시킨다.
이어서, 조절된 크롤링 깊이에 따라 특정 정보를 갖는 웹 페이지들을 크롤링 한다(350 과정).
따라서 본 발명의 일실시예에 따르면, 크롤링 깊이를 동적으로 조절하여 특정 정보를 갖는 웹 페이지의 콘텐츠를 찾을 확률을 높임으로써 크롤링 작업 시간을 줄일 수 있다.
도 4는 본 발명의 일실시예에 따른 웹 페이지 크롤링 방법을 보이는 상세 흐름도이다.
도 5는 도 4의 일실시예를 설명하기 위해 루트 웹 페이지(510)와 그 루트 웹페이지(510)에 링크된 웹 페이지들을 도시한다. 여기서, 웹 페이지 크롤링에 대한 일 실시예를 위해 도 5에 도시된 바와 같이 크롤링 깊이를 "4"로 설정한다. 또한 도 4의 동작 흐름도를 간략히 설명하기 위해 도 5의 각 웹 페이지는 두 개의 링크만 갖는다고 가정한다. 크롤링 깊이는 웹 페이지내의 링크를 조사할 깊이를 의미한다. 크롤링 깊이 값이 커질수록 크롤링 해야하는 웹 페이지 수는 기하급수적으로 증가한다.
먼저, 사용자 단말기에서 지오 태깅(geo-tagging)된 사진 정보와 같은 특정 정보를 갖는 웹 페이지를 요청 받으면, 서버 운영자 또는 서버 정책에 의해 루트(root) URL 리스트를 획득한다(412 과정). 예를 들면, 사용자가 단말기를 통해 관심 지역을 설정하고, 그 설정된 관심 지역내에 특정 정보를 갖는 웹 페이지를 요청할 수 있다. 또한 루트 URL 리스트는 사용자 단말기들이 공유하고 있는 소스 정보 리스트로 대치 될 수도 있다. 루트 URL 은 컨텐츠 제공 서버에 접속하기 위한 접속 시작 주소이다. 도 5를 참조하면 루트 URL 은 크롤링 깊이 "0"에 존재하는 URL 페이지(510)가 될 수 있다.
이어서, 최대 크롤링 깊이(depth)에 기반하여 인터넷 또는 단말기를 통해 루트 URL에 링크된 방문할 모든 URL 리스트를 획득한다(414 과정). 예를 들면, 도 5에 도시된 바와 같이 크롤링 깊이(depth) "1" - "4"에 존재하는 모든 URL 리스트를 획득한다.
이어서, 획득된 URL 리스트를 크롤링 데이터베이스라는 자체 데이터 베이스 포맷으로 변환하여 데이터베이스에 저장한다(416 과정).
이어서, 크롤링 데이터베이스에 저장된 URL 리스트를 기반으로 현재 방문할 URL 리스트를 획득하고 현재 크롤링 깊이 정보를 저장한다(418 과정).
이어서, 획득된 URL 리스트들을 기반으로 해당 URL들을 방문하여 각 URL 페이지에 대한 콘텐츠를 획득한다(422 과정).
이어서, 획득된 콘텐츠내에 지오 태깅된 사진 정보와 같은 특정 정보가 존재하는가를 평가하고, 그 특정 정보 존재 여부에 따라 해당 URL의 페이지를 필터링 한다(424 과정).
도 5를 참조하면, 현재 크롤링 깊이"4"에 존재하는 URL 페이지의 콘텐츠들에 특정 정보 존재 여부를 평가하여 특정 정보를 포함하는 URL 페이지( ■로 표시됨 )와 특정 정보를 포함하지 않는 URL 페이지(□로 표시됨)를 추출한다.
이어서, URL 페이지의 필터링을 이용하여 특정 정보를 포함한 웹 페이지를 획득하는 속도값을 평가하고 그 속도값을 엎데이트 한다(426 과정).
여기서, 웹 페이지를 획득하는 속도값은 특정 정보를 포함한 URL 페이지들을 찾는 시간을 나타낼 수 있다.
이어서, 획득된 URL의 콘텐츠를 파싱(parsing)하여 필요로 하는 콘텐츠 정보들을 분리하고, 그 분리된 콘텐츠 정보와 URL 정보를 크롤링 데이터 베이스에 저장하고 업데이트한다(428 과정).
이어서, 크롤링 깊이가 "0" 인가를 체크한다(432 과정).
이때, 크롤링 깊이가 "0" 이면 하나의 루트 URL에 대한 웹 페이지의 크롤링 작업이 완료되었음을 의미한다.
반면, 크롤링 깊이가 "0" 가 아니면 URL 페이지의 특정 정보를 포함하는 웹 페이지를 획득하는 속도값에 기반하여 크롤링 깊이를 조절한다(434 과정). 다시말하면, 웹 페이지를 획득하는 속도값이 정해진 값이 될 때 까지 크롤링 깊이를 조절한다.
예를 들면, 도 5에 도시된 바와 같이 크롤링 깊이 "4"에는 특정 정보를 포함하는 웹 페이지(■로 표시됨)가 1 개만 존재한다고 하자. 그러면, 크롤링 깊이 "4"에 링크된 크롤링 깊이 "2" 및 "3"에 해당하는 웹 페이지들에는 실험적으로 특정 정보를 포함하는 확률이 적으므로 웹 페이지를 획득하는 속도도 낮아진다. 이에 따라 크롤링 깊이 "4"에 링크된 크롤링 깊이 "2" 및 "3"는 무시되고(도 5에서 "X"로 표시됨) 크롤링 깊이는 "1"로 조절된다.
이어서, 조절된 크롤링 깊이에 기반하여 방문할 URL 리스트를 획득한다(436 과정).
예를 들면, 도 5에 도시된 바와 같이 크롤링 깊이 "1"에 존재하는 URL 리스트를 획득한 후 다시 416 과정 - 436 과정에 대해 크롤링 깊이가 "0"가 될 때 까지 반복한다.
이어서, 조절된 크롤링 깊이가 "0" 이면 필터링된 URL 페이지들중에서 특정 정보를 포함하는 웹 페이지가 존재하는가를 체크한다(442 과정).
이때, 필터링된 URL 페이지들중에서 특정 정보를 포함하는 웹 페이지가 존재하지 않으면 크롤링 작업을 종료한다.
그러나 필터링된 웹 페이지들중에서 특정 정보를 포함하는 웹 페이지가 존재하면 특정 정보를 포함하는 웹페이지를 획득하고(444 과정), 그 획득된 웹 페이지의 URL을 다시 URL 리스트에 부가하여 416 과정 - 436 과정을 반복한다.
최종적으로 웹 검색 서버(120)는 크롤링된 웹 페이지를 사용자(단말기)에게 제공할 수 있다.
이때, 웹 검색 서버(120)는 사용자에 의해 요청된 특정 정보에 근접한 우선 순위대로 콘텐츠와 URL 정보를 사용자에게 제공할 수 있다.
다른 실시예로, 웹 검색 서버(120)는 사용자에 의해 요청된 특정 정보에 기반하여 카테고리별로 분류된 콘텐츠와 URL 정보를 사용자에게 제공할 수 있다.
따라서 본 발명의 일실시예에 따르면, 사용자가 원하는 특정 정보(예를 들면,지오-태깅된 정보)를 갖는 웹 페이지를 찾을 확률이 높은 웹 페이지 링크에 가중치를 둠으로써 전체 웹 주소를 모두 탐색할 필요 없이 크롤링의 속도를 높일 수 있다.
도 6은 본 발명의 다른 실시예에 따른 웹 페이지 크롤링 방법을 보이는 흐름도이다.
먼저, GPS를 이용하여 현재의 단말기의 위치를 파악하여 사용자의 위치를 검출한다(610 과정). 이때 사용자의 위치를 좌표 정보로 변환된다.
이어서, 사용자 위치 정보에 기반 하여 사용자 위치에 해당하는 루트 URL 리스트를 획득한다(620 과정).
이어서, 획득된 루트 URL 리스트를 이용하여 도 3 및 도 4에 개시된 크롤링 깊이 조절에 의한 웹 페이지 크롤링 작업을 수행한다(630 과정).
따라서 본 발명의 다른 실시예에 따르면, 사용자 위치에 따라 실시간적으로 크롤링 작업을 수행할 수 있다.
도 7은 본 발명에 따라 크롤링된 웹 페이지를 사용자에게 제공하는 일 실시예이다.
먼저, 사용자에 의해 지오-태깅된 사진과 같은 특정 정보를 갖는 웹 페이지의 요청을 수신한다(710).
이어서, 크롤링된 웹 페이지의 요청을 수신하면 그 특정 정보에 가장 근접한 우선 순위대로 URL 정보 및 콘텐츠를 제공한다(720 과정).
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)와 같은 저장매체를 포함한다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.

Claims (16)

  1. 웹 페이지 크롤링 방법에 있어서,
    루트 웹 주소 리스트를 획득하는 과정;
    상기 루트 웹 주소에 링크된 웹 주소 리스트를 획득하는 과정;
    상기 웹 주소 리스트에 기반한 각 웹 주소의 페이지에 대한 콘텐츠를 평가하는 과정;
    상기 웹 주소의 페이지에 대한 콘텐츠 평가에 따라 크롤링 깊이를 조절하는 과정;
    상기 조절된 크롤링 깊이에 따라 웹 페이지들을 크롤링 하는 과정을 포함하는 웹 페이지 크롤링 방법.
  2. 제1항에 있어서, 상기 크롤링된 웹 페이지의 웹 주소를 상기 루트 웹 주소 리스트에 포함하는 과정을 더 포함하는 것을 특징으로 하는 웹 페이지 크롤링 방법.
  3. 제1항에 있어서, 상기 크롤링된 웹 페이지들을 사용자에 의해 요청된 특정 정보에 근접한 우선 순위대로 단말기에 제공하는 과정을 더 포함하는 것을 특징으로 하는 웹 페이지 크롤링 방법.
  4. 제1항에 있어서, 상기 크롤링된 웹 페이지들을 사용자에 의해 요청된 특정 정보에 근접한 우선 순위대로 단말기에 제공하는 과정을 더 포함하는 것을 특징으로 하는 웹 페이지 크롤링 방법.
  5. 제1항에 있어서, 상기 크롤링된 웹 페이지 및 웹 주소 정보를 특정 정보에 기반하여 카테고리별로 분류하여 단말기에 제공하는 과정을 도 포함하는 것을 특징으로 하는 웹 페이지 크롤링 방법.
  6. 제1항에 있어서, 상기 웹 주소 리스트 획득 과정은
    최대 크롤링 깊이에 기반하여 방문할 웹 주소 리스트를 획득하는 과정; 및
    획득된 웹 주소 리스트를 데이터 베이스 포맷으로 변화하고 저장하는 과정을 구비하는 것을 특징으로 하는 웹 페이지 크롤링 방법.
  7. 제1항에 있어서, 상기 웹 주소의 페이지에 대한 콘텐츠 평가 과정은,
    저장된 웹 주소 리스트를 기반으로 현재 방문할 웹 주소 리스트 획득 및 현재 크롤링 깊이 정보를 저장하는 과정;
    상기 획득된 웹 주소 리스트에 포함된 웹 주소를 방문하여 해당 웹 주소의 페이지에 대한 콘텐츠를 획득하는 과정;
    상기 획득된 웹 주소의 페이지의 콘텐츠에 특정 정보의 존재 여부를 평가하는 과정을 구비하는 것을 특징으로 하는 웹 페이지 크롤링 방법.
  8. 제1항에 있어서, 상기 크롤링 깊이 조절 과정은
    상기 웹 주소의 페이지에 대한 콘텐츠의 평가에 따라 해당 웹 주소의 페이지를 필터링하는 과정;
    상기 웹 주소 페이지의 필터링 과정을 통해 특정 정보를 포함한 웹 페이지를 획득하는 속도값을 평가하는 과정;
    상기 획득된 웹 페이지의 콘텐츠를 파싱하여 콘텐츠와 웹 주소 정보를 저장하고 업데이트하는 과정;
    상기 특정 정보를 포함한 웹 페이지를 획득하는 속도값에 기반하여 크롤링 깊이를 조절하는 과정을 포함하는 것을 특징으로 하는 웹 페이지 크롤링 방법.
  9. 제8항에 있어서, 상기 웹 페이지를 획득하는 속도값은 특정 정보를 포함한 웹 주소 페이지를 찾는 속도임을 특징으로 하는 웹 페이지 크롤링 방법.
  10. 제8항에 있어서, 상기 웹 페이지를 획득하는 속도값이 정해진 값이 될 때 까지 크롤링 깊이를 조절하는 것임을 특징으로 하는 웹 페이지 크롤링 방법.
  11. 웹 페이지 크롤링 방법에 있어서,
    사용자 위치를 검출하는 과정;
    상기 검출된 사용자 위치 정보에 기반한 크롤링할 루트 웹 주소 리스트를 획득하는 과정;
    상기 획득된 루트 웹 주소에 매핑된 웹 주소 리스트를 획득하는 과정;
    상기 웹 주소 리스트에 기반하여 웹 주소 페이지의 콘텐츠를 평가하는 과정;
    상기 평가된 웹 주소의 페이지에 대한 콘텐츠 평가에 따라 크롤링 깊이를 조절하는 과정;
    상기 조절된 크롤링 깊이에 따라 웹 페이지를 크롤링하는 과정을 포함하는 웹 페이지 크롤링 방법.
  12. 웹 페이지 크롤링 장치에 있어서,
    인터넷 또는 단말기를 통해 루트 웹 주소 리스트 및 그 루트 웹 주소에 링크된 웹 주소 리스트를 획득하는 웹 주소 획득부;
    상기 웹 주소 획득부에서 획득된 웹 주소 리스트들을 기반으로 해당 웹 주소들을 방문하여 각 웹 주소 페이지에 대한 콘텐츠를 획득하고, 그 콘텐츠내에 특정 정보가 존재하는가를 평가하는 웹 페이지 평가부;
    상기 웹 페이지 평가부에서 평가된 결과에 따라 크롤링 깊이를 조절하는 크롤링 깊이 조절부;
    상기 크롤링 깊이 조절부에서 조절된 크롤링 깊이에 따라 웹 페이지들을 크롤링하는 크롤링부를 포함하는 웹 페이지 크롤링 장치.
  13. 제12항에 있어서, 상기 웹 페이지 평가부는 특정 정보를 갖는 웹 페이지를 필터링하는 것임을 특징으로 웹 페이지 크롤링 장치.
  14. 제12항에 있어서, 상기 웹 주소 획득부에서 획득된 웹 주소 리스트를 저장하고, 크롤링부에서 크롤링된 웹 페이지의 콘텐츠와 웹 주소 정보를 저장하는 크롤링 데이터베이스를 더 포함하는 것을 특징으로 하는 웹 페이지 크롤링 장치.
  15. 제12항에 있어서, 상기 크롤링부에서 크롤링된 웹 페이지를 우선 순위 또는 설정된 기준으로 사용자에게 제공하는 웹 제공부를 더 포함하는 것을 특징으로 하는 웹 페이지 크롤링 장치.
  16. 제 1항 내지 제 11항 중 어느 한 항의 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록 매체.
KR1020100104246A 2010-10-25 2010-10-25 웹 페이지 크롤링 방법 및 장치 KR20120042529A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020100104246A KR20120042529A (ko) 2010-10-25 2010-10-25 웹 페이지 크롤링 방법 및 장치
US13/116,785 US20120102019A1 (en) 2010-10-25 2011-05-26 Method and apparatus for crawling webpages

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100104246A KR20120042529A (ko) 2010-10-25 2010-10-25 웹 페이지 크롤링 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20120042529A true KR20120042529A (ko) 2012-05-03

Family

ID=45973838

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100104246A KR20120042529A (ko) 2010-10-25 2010-10-25 웹 페이지 크롤링 방법 및 장치

Country Status (2)

Country Link
US (1) US20120102019A1 (ko)
KR (1) KR20120042529A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101583188B1 (ko) * 2014-10-13 2016-01-11 부산대학교 산학협력단 문제 사이트 발굴 방법 및 문제 사이트 발굴 시스템
KR101614736B1 (ko) 2015-05-29 2016-04-29 (주)타파크로스 텍스트 데이터 마이닝을 통한 확산 예측 기반 크롤링 방법 및 시스템
KR20220144496A (ko) * 2021-04-20 2022-10-27 주식회사 한글과컴퓨터 복수의 웹 사이트들에 대한 효율적인 분산 크롤링을 지원하는 웹 콘텐츠 크롤링 관리 서버 및 그 동작 방법

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10579712B1 (en) * 2011-10-07 2020-03-03 Travelport International Operations Limited Script-driven data extraction using a browser
US10404715B2 (en) 2016-06-23 2019-09-03 Microsoft Technology Licensing, Llc. Cross-site collection queries
CN110020060B (zh) * 2018-07-18 2023-03-14 平安科技(深圳)有限公司 网页数据爬取方法、装置及存储介质
CN109190062B (zh) * 2018-08-03 2023-04-07 平安科技(深圳)有限公司 目标语料数据的爬取方法、装置及存储介质
CN110941788A (zh) * 2019-12-17 2020-03-31 山西云时代技术有限公司 边缘计算的云环境分布式Web页面提取分析系统和方法
CN111460256A (zh) * 2020-03-26 2020-07-28 深圳壹账通智能科技有限公司 网页数据的爬取方法、装置、计算机设备和存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6704722B2 (en) * 1999-11-17 2004-03-09 Xerox Corporation Systems and methods for performing crawl searches and index searches
US6691108B2 (en) * 1999-12-14 2004-02-10 Nec Corporation Focused search engine and method
US20020078014A1 (en) * 2000-05-31 2002-06-20 David Pallmann Network crawling with lateral link handling
US6952730B1 (en) * 2000-06-30 2005-10-04 Hewlett-Packard Development Company, L.P. System and method for efficient filtering of data set addresses in a web crawler
JP2004054631A (ja) * 2002-07-19 2004-02-19 Internatl Business Mach Corp <Ibm> 情報検索システム、情報検索方法、html文書の構造解析方法及びプログラム
US9037583B2 (en) * 2008-02-29 2015-05-19 Ratnakar Nitesh Geo tagging and automatic generation of metadata for photos and videos

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101583188B1 (ko) * 2014-10-13 2016-01-11 부산대학교 산학협력단 문제 사이트 발굴 방법 및 문제 사이트 발굴 시스템
KR101614736B1 (ko) 2015-05-29 2016-04-29 (주)타파크로스 텍스트 데이터 마이닝을 통한 확산 예측 기반 크롤링 방법 및 시스템
KR20220144496A (ko) * 2021-04-20 2022-10-27 주식회사 한글과컴퓨터 복수의 웹 사이트들에 대한 효율적인 분산 크롤링을 지원하는 웹 콘텐츠 크롤링 관리 서버 및 그 동작 방법

Also Published As

Publication number Publication date
US20120102019A1 (en) 2012-04-26

Similar Documents

Publication Publication Date Title
KR20120042529A (ko) 웹 페이지 크롤링 방법 및 장치
US10776447B2 (en) Digital communications platform for webpage overlay
KR102149017B1 (ko) 가이드형 사용자 동작들을 위한 시스템들 및 방법들
US8332763B2 (en) Aggregating dynamic visual content
US8903800B2 (en) System and method for indexing food providers and use of the index in search engines
US7827166B2 (en) Handling dynamic URLs in crawl for better coverage of unique content
US9031946B1 (en) Processor engine, integrated circuit and method therefor
KR101315554B1 (ko) 웹 페이지에 키워드를 할당하기 위한 방법 및 장치
AU2011227327B2 (en) Indexing and searching employing virtual documents
US20120016857A1 (en) System and method for providing search engine optimization analysis
US20100114854A1 (en) Map-based websites searching method and apparatus therefor
US20090288099A1 (en) Apparatus and method for accessing and indexing dynamic web pages
US20110119263A1 (en) Information collection apparatus, search engine, information collection method, and program
US20110238653A1 (en) Parsing and indexing dynamic reports
CN102521257A (zh) 一种用于根据缩略图提供对应的在线图片的方法与设备
JP2022512056A (ja) ページ処理方法、デバイス、電子デバイス及びコンピュータ読み取り可能な記憶媒体
US9524076B2 (en) Web page management method and apparatus and storage medium thereof
JP6399103B2 (ja) ページ自動編集方法、ページ自動編集プログラムおよびページ自動編集装置
US20090248673A1 (en) Method of sorting web pages, search terminal and client terminal
JP2008181445A (ja) 文書情報提供方法、文書情報提供プログラム、文書情報提供装置、およびweb端末装置
JP6333306B2 (ja) 検索データ管理装置、検索データ管理方法、および検索データ管理プログラム
CA2864767A1 (en) Processor engine, integrated circuit and method for promoting websites in search result lists
JP5530334B2 (ja) 情報検索装置、及び情報検索プログラム
CN113536161A (zh) 基于收藏页的处理方法、装置、电子设备及存储介质
KR20230148644A (ko) 개인 데이터 통합 관리 방법

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid