KR20100008466A - Apparatus and method for eliminating double webpage - Google Patents

Apparatus and method for eliminating double webpage Download PDF

Info

Publication number
KR20100008466A
KR20100008466A KR1020080068961A KR20080068961A KR20100008466A KR 20100008466 A KR20100008466 A KR 20100008466A KR 1020080068961 A KR1020080068961 A KR 1020080068961A KR 20080068961 A KR20080068961 A KR 20080068961A KR 20100008466 A KR20100008466 A KR 20100008466A
Authority
KR
South Korea
Prior art keywords
web page
hash value
address
duplicate
hash
Prior art date
Application number
KR1020080068961A
Other languages
Korean (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 KR1020080068961A priority Critical patent/KR20100008466A/en
Publication of KR20100008466A publication Critical patent/KR20100008466A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/18Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Quality & Reliability (AREA)
  • Computational Mathematics (AREA)
  • Signal Processing (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Pure & Applied Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PURPOSE: A device and a method for removing duplicated web pages are provided to eliminate the duplicated with the same contents in the search results. CONSTITUTION: An address converting unit(120) changes the relative address included in the content of the inputted web page into the absolute address. A hash-value calculating unit(130) calculates the hash-value of the absolute address web page transformed to the absolute address. A controller(160) decides whether the calculated hash-value as described above exists in the hash-value list of the hash-value list storage or not. When the corresponding hash-value does not exist, the controller adds hash-value in the hash-value list. The controller stores the collected web page as described above in the web page storage unit.

Description

중복 웹페이지 제거 장치 및 방법{Apparatus and method for eliminating double webpage}Apparatus and method for eliminating double webpage}

본 발명은 중복 웹페이지 제거 장치 및 방법에 관한 것으로서, 보다 상세하게는 웹페이지 검색 서비스에서 같은 내용을 갖는 중복 웹페이지를 제거하는 중복 웹페이지 제거 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for removing duplicate web pages, and more particularly, to an apparatus and method for removing duplicate web pages for removing duplicate web pages having the same contents in a web page search service.

최근 무선 통신 기술의 급격한 발전과 더불어 이동 통신 단말기는 없어서는 안될 개인 필수 휴대품으로 자리매김하고 있다. 나아가 이동 통신 단말기는 단순한 음성통화용도에서 벗어나 채팅이나 문자 메시지 전송, 카메라폰을 이용한 화상 이미지 저장 및 전송, 실시간 동영상 감상 및 무선 인터넷 검색 등으로 이동 통신 단말기의 이용 범위가 날로 확대되고 있다. 또한, 메모리 관련 기술의 발달로 이동 통신 단말기는 방대한 양의 데이터를 저장할 수 있는 저장 매체로써의 기능도 확대되어 가고 있다.Recently, with the rapid development of wireless communication technology, mobile communication terminals are becoming an indispensable personal necessity. In addition, mobile communication terminals are expanding from a simple voice call use to chatting or text messages, storing and transmitting image images using a camera phone, real-time video viewing, and wireless Internet search. In addition, with the development of memory-related technology, the mobile communication terminal is also expanding its function as a storage medium capable of storing a large amount of data.

종래기술에 따르면, 무선 인터넷을 통해 제공되는 무선용 웹페이지는 유선용 웹페이지에 비해 본문 내용이 짧다. 그래서, 무선용 웹페이지는 같은 내용을 다른 URL로 복사하여 저장될 수 있다.According to the related art, the wireless webpage provided through the wireless Internet has a shorter content than the wired webpage. Thus, the wireless web page can be stored by copying the same content to another URL.

무선 웹페이지는 단말기의 특성에 따라 같은 내용을 다른 URL로 분리하여 저장되는 경우가 많기 때문에 URL은 다르지만 같은 내용을 담고 있는 중복 웹페이지가 자주 발생할 수 있다.Since wireless webpages are often stored separately in different URLs according to the characteristics of the terminal, duplicate webpages containing the same contents may be frequently generated.

그래서, 무선 웹페이지를 검색하는 웹검색서비스는 검색결과로서 같은 내용의 웹페이지를 중복해서 보여주는 현상이 발생하는 문제점이 있다.Therefore, a web search service for searching a wireless web page has a problem in that a web page having the same content is repeatedly displayed as a search result.

또한, 이것은 검색결과의 신뢰도를 떨어뜨리는 결과를 초래하는 문제점이 있다.In addition, this has a problem that results in a decrease in the reliability of the search results.

본 발명은 무선 웹사이트 검색 서비스에서 같은 내용을 갖는 중복 웹페이지를제거할 수 있는 중복 웹페이지 제거 장치 및 방법을 제공하는데 그 목적이 있다.An object of the present invention is to provide an apparatus and method for removing duplicate web pages that can remove duplicate web pages having the same contents in a wireless website search service.

본 발명의 일 측면에 따르면, 웹페이지 검색 서비스를 제공하는 웹페이지 검색 서버가 크롤링(crawling) 수행시 중복 웹페이지를 제거하는 중복 웹페이지 제거 장치가 개시된다.According to an aspect of the present invention, there is disclosed an apparatus for removing duplicate webpages that removes duplicate webpages when a webpage search server providing a webpage search service crawls.

본 발명의 일 실시예에 따른 중복 웹페이지 제거 장치는 상기 크롤링 수행시 수집된 웹페이지를 입력받는 웹페이지 입력부, 상기 입력된 웹페이지의 내용에 포 함된 상대주소를 절대주소로 변환하는 주소 변환부, 상기 절대주소로 변환된 절대주소 웹페이지의 해시값을 계산하는 해시값 계산부, 웹페이지 저장부, 해시값 리스트 저장부 및 상기 해시값 계산부에 의해 계산된 해시값이 상기 해시값 리스트 저장부의 해시값 리스트에 존재하는지 여부를 판단하고, 해당 해시값이 존재하지 않을 경우, 상기 해시값을 해시값 리스트에 추가하고, 상기 수집된 웹페이지를 상기 웹페이지 저장부에 저장하는 제어부를 포함한다.The apparatus for removing duplicate web pages according to an embodiment of the present invention includes a web page input unit for receiving a web page collected when the crawl is performed, and an address conversion unit for converting a relative address included in the content of the input web page into an absolute address. And a hash value calculated by the hash value calculator for calculating a hash value of the absolute address web page converted to the absolute address, a web page storage unit, a hash value list storage unit, and the hash value calculator. A control unit for determining whether or not the negative hash value list exists, and if the hash value does not exist, adds the hash value to the hash value list, and stores the collected web page in the web page storage unit. .

본 발명의 다른 일 측면에 따르면, 웹페이지 검색 서비스를 제공하는 웹페이지 검색 서버의 크롤링(crawling) 수행시 중복 웹페이지 제거 장치가 중복 웹페이지를 제거하는 중복 웹페이지 제거 방법이 개시된다.According to another aspect of the present invention, a duplicate webpage removal method is disclosed in which a duplicate webpage removal apparatus removes a duplicate webpage when a webpage search server providing a webpage search service crawls.

본 발명의 일 실시예에 따른 중복 웹페이지 제거 방법은 상기 크롤링 수행시 찾은 웹페이지를 입력받는 단계, 상기 웹페이지 내용에 포함된 상대주소를 절대주소로 변환하는 단계, 상기 절대주소를 포함하는 웹페이지의 해시값을 계산하는 단계 및 상기 해시값이 해시값 리스트에 존재하는 여부를 판단하고, 존재하는 경우, 웹페이지를 저장하지 않고, 존재하지 않는 경우, 상기 해시값을 상기 해시값 리스트에 추가하고 상기 웹페이지를 저장하는 단계를 포함한다.Duplicate web page removal method according to an embodiment of the present invention comprises the steps of receiving a web page found when performing the crawl, converting a relative address included in the content of the web page to an absolute address, the web including the absolute address Calculating a hash value of the page and determining whether the hash value exists in the hash value list, and if not present, not storing the web page, and if not, adding the hash value to the hash value list And storing the web page.

본 발명의 다른 일 측면에 따르면, 웹페이지 검색 서비스를 제공하는 웹페이지 검색 서버의 크롤링(crawling) 수행시 중복 웹페이지 제거 장치가 중복 웹페이지를 제거하는 중복 웹페이지 제거 방법이 개시된다.According to another aspect of the present invention, a duplicate webpage removal method is disclosed in which a duplicate webpage removal apparatus removes a duplicate webpage when a webpage search server providing a webpage search service crawls.

본 발명의 다른 실시예에 따른 중복 웹페이지 제거 방법은 상기 크롤링 수행시 찾은 웹페이지를 입력받는 단계, 상기 입력받은 웹페이지의 주소를 추출하는 단 계, 상기 주소와 상기 웹페이지의 내용을 병합하는 단계 및 상기 병합된 결과의 해시값을 계산하는 단계 및 상기 해시값이 해시값 리스트에 존재하는 여부를 판단하고, 존재하는 경우, 웹페이지를 저장하지 않고, 존재하지 않는 경우, 상기 해시값을 상기 해시값 리스트에 추가하고 상기 웹페이지를 저장하는 단계를 포함한다.According to another embodiment of the present invention, a method of removing a duplicate webpage includes receiving a webpage found when the crawl is performed, extracting an address of the received webpage, and merging the contents of the webpage with the address. Calculating a hash value of the merged result; and determining whether the hash value exists in a hash value list, and if not present, without storing a web page, and if not present, recalling the hash value. Adding to the hash value list and storing the web page.

본 발명의 다른 일 측면에 따르면, 중복 웹페이지 제거 방법을 수행하는 전자기기가 판독 가능한 중복 웹페이지 제거 방법을 수행하는 프로그램을 기록한 기록매체가 개시된다.According to another aspect of the present invention, a recording medium having recorded thereon a program for performing a method for removing a duplicate webpage readable by an electronic device performing the method for removing a duplicate webpage is disclosed.

본 발명의 일실시예에 따른 중복 웹페이지 제거 방법을 수행하는 프로그램을 기록한 기록매체는 상기 크롤링 수행시 찾은 웹페이지를 입력받는 단계, 상기 웹페이지 내용에 포함된 상대주소를 절대주소로 변환하는 단계, 상기 절대주소를 포함하는 웹페이지의 해시값을 계산하는 단계 및 상기 해시값이 해시값 리스트에 존재하는 여부를 판단하고, 존재하는 경우, 웹페이지를 저장하지 않고, 존재하지 않는 경우, 상기 해시값을 상기 해시값 리스트에 추가하고 상기 웹페이지를 저장하는 단계를 포함하는 중복 웹페이지 제거 방법을 수행한다.Receiving a recording medium recording a program for performing a method for removing a duplicate web page according to an embodiment of the present invention receives a web page found when performing the crawl, converting a relative address included in the content of the web page to an absolute address Calculating a hash value of the web page including the absolute address; and determining whether the hash value exists in the hash value list, and if not present, without storing the web page and, if not, the hash value. And adding a value to the hash value list and storing the web page.

본 발명의 다른 일 측면에 따르면, 중복 웹페이지 제거 방법을 수행하는 전자기기가 판독 가능한 중복 웹페이지 제거 방법을 수행하는 프로그램을 기록한 기록매체가 개시된다.According to another aspect of the present invention, a recording medium having recorded thereon a program for performing a method for removing a duplicate webpage readable by an electronic device performing the method for removing a duplicate webpage is disclosed.

본 발명의 다른 실시예에 따른 중복 웹페이지 제거 방법을 수행하는 프로그램을 기록한 기록매체는 상기 크롤링 수행시 찾은 웹페이지를 입력받는 단계, 상기 입력받은 웹페이지의 주소를 추출하는 단계, 상기 주소와 상기 웹페이지의 내용을 병합하는 단계 및 상기 병합된 결과의 해시값을 계산하는 단계 및 상기 해시값이 해시값 리스트에 존재하는 여부를 판단하고, 존재하는 경우, 웹페이지를 저장하지 않고, 존재하지 않는 경우, 상기 해시값을 상기 해시값 리스트에 추가하고 상기 웹페이지를 저장하는 단계를 포함하는 중복 웹페이지 제거 방법을 수행한다.A recording medium recording a program for performing a method of removing a duplicate web page according to another embodiment of the present invention comprises the steps of receiving a web page found when performing the crawl, extracting the address of the received web page, the address and the Merging the contents of the web page, calculating a hash value of the merged result, and determining whether the hash value exists in the hash value list, and if present, without storing the web page and not present If the hash value is added to the hash value list, the web page removal method comprising the step of storing the web page is performed.

본 발명은 무선 웹사이트 검색 서비스에서 같은 내용을 갖는 중복 웹페이지를제거할 수 있는 효과가 있다.The present invention has the effect of eliminating duplicate web pages having the same contents in the wireless website search service.

또한, 본 발명은 무선 웹페이지를 검색 서비스에서 검색결과의 중복을 제거하여 웹페이지 검색 서비스의 품질을 향상시킬 수 있는 효과가 있다.In addition, the present invention has the effect of improving the quality of the web page search service by removing the duplicate of the search results in the wireless web page search service.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에대한 구체적인 설명이 본 발명의요지를 흐릴 수 있다고판단되는 경우 그 상세한설명을 생략한다.As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all transformations, equivalents, and substitutes included in the spirit and scope of the present invention. In the following description of the present invention, when it is determined that the detailed description of the related known technology may obscure the gist of the present invention, the detailed description thereof will be omitted.

제1, 제2 등의 용어는 다양한구성요소들을 설명하는데 사용될수 있지만, 상 기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. Terms such as first and second may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은문맥상 명백하게 다르게 뜻하지않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In the present application, the term "comprises" or "having" is intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and that one or more other features It is to be understood that the present invention does not exclude the possibility of adding or presenting numbers, steps, operations, components, parts, or a combination thereof.

이하, 본 발명의 실시예를 첨부한 도면들을 참조하여 상세히 설명하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

본 발명의 이해를 돕기 위해, 이하에서는 유선 인터넷망에서 검색 서비스를 제공하는 검색사이트의 검색처리절차에 대해서 예를 들어 간단히 설명하기로 한다.For better understanding of the present invention, a search process of a search site that provides a search service in a wired Internet network will be briefly described as an example.

검색사이트는 검색어와 일치하는 웹페이지를 찾고 검색결과의 순서를 정하여 검색서비스를 제공한다. A search site provides a search service by finding a web page that matches a search word and determining the order of the search results.

웹 검색은 모든 정보의 위치가 정확하게 표시된 색인을 찾는 것으로, 검색을 수행하면 프로그램이 색인을 확인하여 가장 관련성이 높은 검색결과를 찾아 출력한다.A web search finds an index with the exact location of all the information. When you do a search, the program checks the index and finds the most relevant search results.

검색결과는 크롤링(crawling), 색인생성 및 결과출력의 처리과정을 통해 출 력된다.Search results are output through the process of crawling, indexing, and outputting results.

크롤링은 새로운 페이지 및 업데이트된 페이지를 찾아 검색사이트의 색인에 추가하는 과정이다. 여기서, 검색사이트는 다양한 종류의 컴퓨터를 사용하여 수십억개의 웹페이지를 가져온다. 이 작업을 크롤링이라 한다. Crawl is the process of finding and adding new and updated pages to the search site's index. Here, search sites bring billions of web pages using various kinds of computers. This task is called crawling.

여기서, 크롤링은 프로그램에 의해 수행되는데, 웹페이지를 가져오는 프로그램은 보통 로봇, 봇, 스파이더 등으로 알려져 있다. 이러한 프로그램은 크롤링할 사이트, 크롤링 횟수 및 각 사이트에서 가져올 페이지 수를 결정한다.In this case, crawling is performed by a program, and a program that brings a web page is commonly known as a robot, a bot, a spider, and the like. These programs determine which sites to crawl, how often to crawl them, and how many pages to fetch from each site.

또한, 크롤링 과정은 이전 크롤링 과정에서 생성되었거나 웹마스터가 제공한 사이트맵(sitemap) 데이터로 추가된 웹페이지 URL 목록에서부터 시작된다. 웹페이지를 가져오는 프로그램은 이러한 웹사이트를 방문할 경우, 각 페이지의 링크를 감지하여 이를 크롤링 페이지 목록에 추가한다. 그래서, 새사이트, 기존 사이트의 변경사항 및 비활성 링크는 파악된 후 색인을 업데이트 하는데 사용된다.In addition, the crawl process begins with a list of web page URLs that were created in the previous crawl process or added with sitemap data provided by the webmaster. When a web page fetcher visits such a website, it detects a link on each page and adds it to the list of crawled pages. Thus, new sites, changes to existing sites, and inactive links are identified and used to update the index.

이어서, 색인생성은 프로그램에 의해 크롤링된 각 사이트를 처리하여 각 페이지에서 파악된 모든 단어와 해당 단어의 위치로 구성된 거대한 색인을 생성하는 것이다. 또한, 프로그램은 제목 태그나 대체 속성과 같은 주요 컨텐츠 태그와 속성에 포함된 정보도 처리한다. Indexing then processes each site crawled by the program to produce a huge index of all words identified on each page and their location. The program also processes information contained in key content tags and attributes, such as title tags and alternate attributes.

이어서, 결과출력은 사용자가 검색어를 입력하면 일치하는 페이지의 색인을 검색하고 사용자에게 가장 관련성이 높은 것으로 판단되는 결과를 출력한다. 여기서, 관련성은 특정 페이지에 대한 페이지랭크(Pagerank)를 포함하여 수많은 요인에 의해 결정될 수 있다.Subsequently, when the user inputs a search word, the result output retrieves the index of the matching page and outputs the result determined to be most relevant to the user. Here, the relevance may be determined by a number of factors including the page rank for a particular page.

이하의 모든 설명에서는 이동 통신 단말기에서 수행되는 무선 인터넷 검색 서비스의 경우를 예로 들어 설명하지만, 본 발명의 웹페이지 제목 획득 장치 및 방법은 노트북, 데스크탑, PDA 등을 포함하여 유선 또는 무선 인터넷을 통한 검색 서비스가 가능한 일체의 전자 기기라면 아무런 제한없이 적용될 수 있음은 자명하다.In the following description, the wireless internet search service performed by the mobile communication terminal will be described as an example. However, the apparatus and method for acquiring a web page title according to the present invention includes a notebook, a desktop, a PDA, and the like. Obviously, any electronic device capable of servicing can be applied without any limitation.

본 발명의 실시예에 따른 중복 웹페이지 제거 장치는 웹페이지 검색 서비스를 제공하는 웹페이지 검색 서버내에 포함될 수 있으며, 웹페이지 검색 서버에 연결된 장치로 구현될 수 있다. 또한, 본 발명의 실시예에 따른 웹페이지 제목 획득 장치 및 방법은 웹페이지 검색 서버가 판독할 수 있는 소프트웨어로 구현되어 수행될 수 있음은 자명하다.The apparatus for removing duplicate web pages according to an embodiment of the present invention may be included in a web page search server that provides a web page search service, and may be implemented as a device connected to a web page search server. In addition, it is apparent that the apparatus and method for obtaining a webpage title according to an embodiment of the present invention may be implemented by software that can be read by a webpage search server.

본 발명의 실시예를 구체적으로 설명하기 앞서, 본 발명의 요지를 명확하게 하기 위하여 중복 웹페이지 제거 방법에 대하여 간략히 설명하기로 하겠다.Before describing the embodiments of the present invention in detail, a brief description will be given of a method for removing duplicate web pages in order to clarify the gist of the present invention.

예를 들어, 두 개의 웹페이지 A와 B가 있다고 가정하자, A와 B의 내용이 일치하고, A와 B의 본문에 포함된 다른 웹페이지로 연결되는 링크의 수와 각 링크의 절대주소가 같은 경우, A와 B는 중복 웹페이지로 판단될 수 있다. 그래서, A와 B의 어느 하나는 웹페이지를 검색해 주는 검색 결과에서 제거될 수 있다.For example, suppose you have two web pages, A and B, where the contents of A and B match, and the number of links to other web pages in the body of A and B is the same as the absolute address of each link. In this case, A and B may be determined as duplicate web pages. Thus, either A or B can be removed from the search results for searching the web page.

또한, 두 개의 웹페이지 A와 B의 본문 내용에 포함된 모든 상대주소를 절대주소로 바꾼 후, A와 B를 비교해서 같은 경우, A와 B는 중복 웹페이지로 판단될 수 있다. 여기서, 상대주소는 웹페이지의 본문 내용에 포함된 링크의 주소이다.In addition, after changing all relative addresses included in the body content of two web pages A and B into absolute addresses, A and B may be compared, and in the same case, A and B may be determined to be duplicate web pages. Here, the relative address is an address of a link included in the main content of the web page.

이와 같은 방법은 새로운 웹페이지가 검색대상에 포함되기 전에 그 동안 축 적된 다른 모든 웹페이지 각각에 대해 비교를 하여 같으면 새로운 웹페이지를 검색 대상에 넣지 않고 폐기함으로써 중복 검색 결과를 방지할 수 있다.Such a method can prevent duplicate search results by comparing each other web page accumulated in the meantime before the new web page is included in the search target and discarding the new web page without putting it in the search target.

그러나, 이 방법은 축적된 웹페이지의 수가 많을 경우, 모든 웹페이지의 내용을 컴퓨터가 비교하기에는 성능의 한계로 현실적으로 어렵다.However, this method is practically difficult due to the limitation of performance for the computer to compare the contents of all web pages when the number of accumulated web pages is large.

그래서, 중복 웹페이지의 판단은 해시함수를 이용하여 웹페이지의 해시값을 계산하고, 이 해시값을 비교하여 수행될 수 있다. Thus, the determination of the duplicate web page may be performed by calculating a hash value of the web page using a hash function and comparing the hash values.

도 1은 본 발명의 일 실시예에 따른 중복 웹페이지 제거 장치의 구성도이다.1 is a block diagram of an apparatus for removing duplicate web pages according to an embodiment of the present invention.

도 1을 참조하면, 중복 웹페이지 제거 장치(100)는 웹페이지 수집부(110), 주소 변환부(120), 해시값 계산부(130), 웹페이지 저장부(140), 해시값 리스트 저장부(150) 및 제어부(160)를 포함할 수 있다.Referring to FIG. 1, the apparatus for removing duplicate web pages 100 may include a web page collecting unit 110, an address converting unit 120, a hash value calculating unit 130, a web page storing unit 140, and a hash value list storage. The unit 150 and the controller 160 may be included.

여기서, 중복 웹페이지 제거 장치(100)는 웹페이지 검색 서비스를 제공하는 웹페이지 검색 서버내에 프로그램 모듈 또는 장치로 구현될 수 있음은 본 발명의 기술적 사상에 비추어 당업자에게 자명하다. 여기서, 웹페이지 검색 서버는 이동 통신 단말을 통해 무선용 웹페이지 검색 요청 및 검색어를 수신할 경우, 입력받은 검색어에 적합한 색인을 찾아서 검색결과를 이동 통신 단말로 전송할 수 있다. 여기서, 색인은 웹페이지의 제목, 웹페이지의 내용을 포함 할 수 있다.Here, it will be apparent to those skilled in the art in view of the technical spirit of the present invention that the apparatus for removing duplicate web pages 100 may be implemented as a program module or a device in a web page search server that provides a web page search service. When the webpage search server receives a wireless webpage search request and a search word through the mobile communication terminal, the webpage search server may find an index suitable for the input search word and transmit the search result to the mobile communication terminal. Here, the index may include the title of the web page and the content of the web page.

또한, 웹페이지 검색 서버는 크롤링 수행시 신규 웹페이지 및 업데이트된 웹페이지 모두 새로운 웹페이지로 판단하여 신규 웹페이지 수집을 수행한다.In addition, the webpage search server determines that both the new webpage and the updated webpage are new webpages and collects new webpages when the crawl is performed.

이때, 웹페이지 검색 서버는 미리 설정된 수집할 웹페이지, 횟수, 페이지수 등에 따라 웹페이지를 찾을 수 있다.In this case, the webpage search server may find a webpage according to a preset webpage to be collected, the number of times, the number of pages, and the like.

또한, 중복 웹페이지 제거 장치(100)는 웹페이지 검색 서버가 크롤링 수행시 신규 및 업데이트된 신규 웹페이지를 수집하여 오는 경우, 신규 웹페이지에서 중복 웹페이지를 제거한다. 여기서, 중복 웹페이지는 신규 웹페이지의 내용과 기존에 저장된 웹페이지 내용이 동일한 웹페이지이다.In addition, when the webpage search server collects new and updated new webpages when the webpage search server crawls, the duplicated webpage removing apparatus 100 removes the duplicated webpages from the new webpage. Here, the duplicate web page is a web page in which the contents of the new web page and the contents of the previously stored web page are the same.

이하, 중복 웹페이지 제거 장치(100)의 구성부를 설명하기로 한다.Hereinafter, the configuration of the duplicate web page removal apparatus 100 will be described.

웹페이지 입력부(110)는 웹페이지 검색 서버에 의해 크롤링(crawling) 수행시 수집되는 웹페이지의 정보를 입력받는다. 여기서, 크롤링은 신규 웹페이지를 수집하여 기존에 생성되어 있던 색인을 갱신하는 과정으로써, 웹페이지의 링크를 추적하여 웹페이지들에 대한 정보를 획득하여 수행될 수도 있다.The webpage input unit 110 receives information of a webpage collected when a crawl is performed by a webpage search server. In this case, the crawling process is a process of updating a previously generated index by collecting a new web page. The crawling may be performed by tracking a link of the web page to obtain information about the web pages.

여기서, 크롤링 대상이 되는 웹페이지는 무선 인터넷용 웹페이지이며, 일반 웹페이지가 되는 경우가 있을 수 있다.Here, the web page to be crawled is a web page for wireless Internet, and may be a general web page.

여기서, 웹페이지 입력부(110)가 중복 웹페이지 제거 장치(100)의 구성부로서 설명하였으나, 이는 하나의 예시에 불과하다. 중복 웹페이지 제거 장치(100)는 웹페이지 검색 서버 내에서 별도의 입력부를 포함하지 않고 구현될 수 있음은 본 발명의 기술적 사상에 비추어 당업자에게 자명하다.Here, the web page input unit 110 has been described as a component of the redundant web page removing apparatus 100, but this is merely an example. It is apparent to those skilled in the art in view of the technical concept of the present invention that the apparatus for removing a duplicate webpage 100 may be implemented without a separate input unit in a webpage search server.

주소 변환부(120)는 웹페이지 입력부(110)에 의해 입력받은 웹페이지의 내용에 포함된 상대주소를 절대주소로 변환한다. 여기서, 상대주소를 절대주소로 변환하는 것은 웹페이지의 내용이 동일함에도 웹페이지 내용에 포함된 링크 주소의 차이로 웹페이지의 내용이 다르다고 판단할 수 있으므로 주소를 통일시키고자 하는 것이다.The address conversion unit 120 converts a relative address included in the content of the web page input by the web page input unit 110 into an absolute address. Here, converting a relative address into an absolute address is intended to unify the address because the content of the web page can be determined to be different due to the difference in the link address included in the content of the web page even though the content of the web page is the same.

여기서, 절대주소는 기준주소에 상대주소를 더하여 생성될 수 있다.Here, the absolute address may be generated by adding a relative address to the base address.

절대주소는 서버 프로토콜을 포함하는 완전한 주소이며, 서버 프로토콜은 웹페이지의 경우, 대부분 "http://"이다.The absolute address is a complete address including the server protocol, which is most often "http: //" for web pages.

예를 들어, "http://www.macromedia.com/kr/support/"는 Macromedia Fireworks 기술 지원 웹 페이지의 절대주소이다. 절대주소는 소스 문서의 위치와는 상관 없이 정확하게 유지되지만 대상 문서가 이동하면 제대로 링크되지 않는다.For example, "http://www.macromedia.com/en/support/" is the absolute address of the Macromedia Fireworks technical support web page. Absolute addresses remain accurate regardless of the location of the source document, but do not link properly as the target document moves.

또한, 상대주소는 소스 문서가 포함된 디렉토리에 대해 상대적인 주소이다.Relative addresses are also relative to the directory containing the source document.

또한, 기준주소는 현재 입력받은 웹페이지의 실제 주소이다.In addition, the reference address is the actual address of the web page currently input.

즉, 상대주소는 현재 웹페이지의 주소를 기준으로 하위 디렉토리의 주소로서, 현재 웹페이지의 주소는 생략하고, 하위에 포함된 주소만을 나타낸 주소이다.That is, the relative address is an address of a subdirectory based on the address of the current webpage, and the address of the current webpage is omitted and only the addresses included in the lower part are omitted.

다시 말해, 하나의 웹페이지는 주소와 본문 내용을 포함하고 있다. 여기서, 본문 내용은 다른 웹페이지를 참조하는 참조 웹페이지로 연결되는 링크를 포함할 수 있다. 여기서, 링크는 참조 웹페이지의 주소 정보를 포함하고 있다. 이 주소 정보는 절대 주소일 수 있으나, 참조 웹페이지가 현재 웹페이지의 하위 디렉토리에 위치하는 웹페이지인 경우, 현재 웹페이지의 주소를 기준주소로 한 상대 주소일 수 있다. 여기서, 상대 주소는 현재 웹페이지의 주소를 생략하고, 하위 디렉토리의 위치만을 나타낸 주소이다. 따라서, 상대주소는 현재 웹페이지를 기준으로 한 하위 디렉토리의 웹페이지를 링크하는 경우에만 웹페이지의 내용에 포함된 링크의 주소정보로 이용될 수 있다.In other words, a web page contains an address and body content. Here, the main content may include a link to a reference web page referring to another web page. Here, the link includes address information of the reference web page. The address information may be an absolute address, but when the reference web page is a web page located in a subdirectory of the current web page, the address information may be a relative address based on the address of the current web page. Here, the relative address is an address indicating the location of a subdirectory, omitting the address of the current web page. Therefore, the relative address may be used as the address information of the link included in the content of the web page only when the web page of the subdirectory based on the current web page is linked.

예를 들어, 절대주소가 "http://www.macromedia.com/kr/support/file.htm"이라고 가정하자. 여기서, "http://www.macromedia.com/kr/support/"는 기준주소가 되고, "file.htm"는 상대주소가 될 수 있다. For example, suppose the absolute address is "http://www.macromedia.com/us/support/file.htm". Here, "http://www.macromedia.com/kr/support/" may be a reference address and "file.htm" may be a relative address.

즉, "http://www.macromedia.com/kr/support/"는 웹페이지의 주소창에 표시된 현재 웹페이지의 주소이고, "file.htm"은 웹페이지의 본문 내용에 포함된 링크의 주소 정보가 된다.That is, "http://www.macromedia.com/en/support/" is the address of the current webpage displayed in the address bar of the webpage, and "file.htm" is the address information of the link included in the body content of the webpage. Becomes

예를 들어, 웹페이지에 포함된 링크는"http://krhost.net/url/url_html/html/02"이라는 문서를 참조하고 있다고 가정하자. 이때, "http://krhost.net/url/url_html/html/01"이라는문서를 참조하고자 하는 경우, 이 문서에 해당하는 상대주소는 "01"이다. 또한, 기준주소는 "http://krhost.net/url/url_html/html/"이다. 따라서, 절대주소는 상대주소 "01"을 더하여 "http://krhost.net/url/url_html/html/01"이 될 수 있다. For example, suppose a link included in a web page refers to a document called "http://krhost.net/url/url_html/html/02". At this time, if you want to refer to the document "http://krhost.net/url/url_html/html/01", the relative address corresponding to this document is "01". The reference address is "http://krhost.net/url/url_html/html/". Therefore, the absolute address may be "http://krhost.net/url/url_html/html/01" by adding the relative address "01".

해시값 계산부(130)는 주소 변환부(120)에 의해 절대주소로 변환된 웹페이지를 해시함수를 이용하여 해시값을 계산한다.The hash value calculator 130 calculates a hash value of a web page converted into an absolute address by the address converter 120 using a hash function.

여기서, 해시값을 계산하는 것은 하나의 문자열을 원래의 것을 상징하는 더 짧은 길이의 값이나 키로 변환하는 것이다. 해시값은 짧은 해시 키를 사용하여 항목을 찾으면 원래의 값을 이용하여 찾는 것보다 더 빠르기 때문에 데이터베이스 내의 항목들을 색인하고 검색하는데 사용된다. 여기서, 해시값 계산에 사용되는 문자열은 웹페이지 내의 모든 내용 중 임의의 일부 또는 전부를 사용할 수 있다.Here, calculating a hash value converts a string into a shorter value or key that symbolizes the original. Hash values are used to index and search items in the database because finding them using a short hash key is faster than finding them using the original values. Here, the string used for calculating the hash value may use any part or all of all contents in the web page.

또한, 해시함수는 해시값을 계산하는 알고리즘이다. In addition, the hash function is an algorithm for calculating a hash value.

해시값은 빠른 속도의 데이터 검색 외에도, 전자서명을 암호화하고 복호화하는 데에도 사용된다. In addition to fast data retrieval, hash values are used to encrypt and decrypt digital signatures.

예를 들어, 전자서명은 해시함수를 이용하여 변환된 다음, 해시값과 전자서명이 별도로 전송된다. 수신자는 송신자가 사용한 해시함수와 같은 것을 사용하여, 서명으로부터 해시값을 뽑아내어 그것을 이미 수신한해시값과 비교한다. 그 비교 결과는 같아야만 전자서명이 유효하다.For example, the digital signature is converted using a hash function, and then the hash value and the digital signature are transmitted separately. The receiver uses the same hash function used by the sender to extract the hash value from the signature and compare it with the hash value already received. The digital signature is valid only if the comparison is the same.

또한, 일반적으로 사용되는 해시함수는 MD5(message digest 5), SHA(secure hash algorithm 1) 등이 있다. 이와 같은 해시함수는 문자열로 구성된 문서를 문서의 내용을 대표하는 짧은 문자열로 변환할 수 있으며, 문서의 내용이 조금이라도 다르면 해시값이 달라지게 하는 특성이 있다. 그래서, 해시함수로 계산된 해시값으로 문서를 비교하는 것은 문서 전체를 저장했다가 비교하는 것보다 효율적으로 문서를 비교할 수 있다는 장점이 있다. In addition, commonly used hash functions include message digest 5 (MD5) and secure hash algorithm 1 (SHA). Such a hash function can convert a document composed of a string into a short string representing the content of the document, and the hash value is different if the content of the document is slightly different. Thus, comparing documents with a hash value calculated with a hash function has an advantage of comparing documents more efficiently than storing and comparing the entire document.

예를 들어, 해시함수는 사람의 지문을 비교할 때 이용된다. 즉, 지문 비교는 지문 원본을 저장하고 비교하는 대신 해시함수를 적용한 지문 데이터의 해시값을 저장하고 비교하여 수행된다.For example, hash functions are used to compare human fingerprints. That is, fingerprint comparison is performed by storing and comparing hash values of fingerprint data to which a hash function is applied instead of storing and comparing a fingerprint original.

웹페이지 저장부(140)는 웹페이지 입력부(110)에 의해 입력된 웹페이지들 중에서 기존의 웹페이지의 내용과 중복되지 않는 웹페이지를 저장한다.The webpage storage unit 140 stores webpages that do not overlap with the contents of the existing webpages among the webpages input by the webpage input unit 110.

해시값 리스트 저장부(150)는 해시값 계산부(130)에 의해 계산된 해시값을 저장한다.The hash value list storage unit 150 stores the hash value calculated by the hash value calculation unit 130.

제어부(160)는 웹페이지 입력부(110)에 의해 입력되는 모든 웹페이지의 내용 을 각각 읽어들이고, 주소 변환부(120)를 통해 웹페이지 내에 포함된 상대주소를 절대주소로 변환한다. The controller 160 reads the contents of all the web pages input by the web page input unit 110, and converts the relative addresses included in the web pages into absolute addresses through the address conversion unit 120.

또한, 제어부(160)는 변환된 주소를 포함하는 웹페이지의 해시값을 해시값 계산부(130)로부터 전달받아 해시값 리스트 저장부(150)에 저장되어 있는 해시값들과 비교한다. 그리고, 제어부(160)는 비교결과, 해시값 리스트 저장부(150)에 해시값이 존재하는 경우, 해당 웹페이지를 웹페이지 저장부(140)에 저장시키지 않으므로써, 중복 웹페이지를 제거한다.In addition, the controller 160 receives the hash value of the web page including the converted address from the hash value calculator 130 and compares the hash values stored in the hash value list storage unit 150. When the hash value is present in the hash value list storage unit 150, the controller 160 eliminates duplicate web pages by not storing the corresponding web page in the web page storage unit 140.

또한, 제어부(160)는 비교결과, 해시값 리스트 저장부(150)에 해시값이 존재하지 않는 경우, 해시값을 해시값 리스트 저장부(150)에 저장시키고, 해당 웹페이지를 웹페이지 저장부(140)에 저장시킨다.When the hash value list storage unit 150 does not have a hash value, the controller 160 stores the hash value in the hash value list storage unit 150 and stores the web page in the web page storage unit. Save to 140.

여기서, 웹페이지 저장부(150)에 저장되는 웹페이지들은 중복이 제거된 웹페이지들로서, 웹페이지 검색 서버가 크롤링 수행시 중복이 제거된 웹페이지들을 이용하여 색인 생성을 할 수 있다.Here, the web pages stored in the web page storage unit 150 are web pages deduplicated, and the web page search server may index the web pages using the deduplicated web pages when crawling.

도 2는 본 발명의 일 실시예에 따른 중복 웹페이지 제거 방법을 나타낸 흐름도이다. 2 is a flowchart illustrating a method of removing duplicate web pages according to an embodiment of the present invention.

이하, 본 발명의 이해와 설명의 편의를 도모하기 위해, 중복 웹페이지 제거 장치를 주체로 하여 설명한다.Hereinafter, in order to facilitate the understanding and explanation of the present invention, a description will be given mainly of the apparatus for removing duplicate web pages.

도 2를 참조하면, 우선, 중복 웹페이지 제거 장치(100)는 크롤링 수행시 수집된 웹페이지를 입력받는다(S210). Referring to FIG. 2, first, an apparatus 100 for removing a duplicate webpage receives a webpage collected when a crawl is performed (S210).

여기서, 크롤링은 신규 웹페이지를 수집하여 기존에 생성되어 있던 색인을 갱신하는 과정으로써, 웹페이지의 링크를 추적하여 웹페이지들에 대한 정보를 획득하여 수행될 수도 있다.In this case, the crawling process is a process of updating a previously generated index by collecting a new web page. The crawling may be performed by tracking a link of the web page to obtain information about the web pages.

이어서, 중복 웹페이지 제거 장치(100)는 입력받은 웹페이지의 내용에 포함된 상대주소를 절대주소를 변환한다(S220). 여기서, 웹페이지의 내용에 포함된 상대주소는 다른 웹페이지를 참조하는 링크된 주소이고, 웹페이지의 현재 주소를 기준주소로 한다.Subsequently, the apparatus for removing duplicate web pages 100 converts an absolute address from a relative address included in the content of the input web page (S220). Here, the relative address included in the content of the web page is a linked address referring to another web page, and the current address of the web page is used as a reference address.

또한, 절대주소는 기준주소에 상대주소를 더하여 생성된다. Also, an absolute address is generated by adding a relative address to a base address.

절대주소, 상대주소 및 기준주소에 대한 설명은 전술하였으므로 이하에서는 그 설명을 생략하기로 한다.Since the description of the absolute address, the relative address and the reference address has been described above, the description thereof will be omitted.

이어서, 중복 웹페이지 제거 장치(100)는 변환된 주소를 포함하는 웹페이지의 해시값을 계산한다(S230). 여기서, 해시값은 해시함수를 이용하여 계산되며, 웹페이지 내의 모든 내용을 변수로 이용하여 계산될 수 있다.Subsequently, the duplicate webpage removing apparatus 100 calculates a hash value of the webpage including the converted address (S230). Here, the hash value is calculated using a hash function, and can be calculated using all contents of the web page as variables.

해시값 및 해시함수에 대한 설명은 전술하였으므로 이하에서는 그 설명을 생략하기로 한다.Since the description of the hash value and the hash function has been described above, the description thereof will be omitted.

이어서, 중복 웹페이지 제거 장치(100)는 계산된 해시값이 중복 웹페이지 제거 장치에 저장된 해시값 리스트에 존재하는지 여부를 판단하고(S240), 판단 결과, 해시값이 해시값 리스트에 존재하는 경우 해당 웹페이지를 저장하지 않는다(S250).Subsequently, the duplicate webpage removing apparatus 100 determines whether the calculated hash value exists in the hash value list stored in the duplicate webpage removing apparatus (S240), and if the hash value exists in the hash value list, as a result of the determination. Do not save the web page (S250).

또한, 판단 결과, 해시값이 해시값 리스트에 존재하지 않는 경우, 해시값 리스트에 해시값을 추가하고(S260), 해당 웹페이지를 저장한다(S270).If the hash value does not exist in the hash value list, the hash value is added to the hash value list (S260), and the web page is stored (S270).

도 3은 본 발명의 다른 실시예에 따른 중복 웹페이지 제거 방법을 나타낸 흐름도이다. 더욱 상세하게는 도 3은 웹페이지의 내용에 포함된 링크 중 링크에 포함된 상대주소를 절대주소로 변환하는 과정이 필요없는 중복 웹페이지 제거 방법이다.3 is a flowchart illustrating a method of removing a duplicate webpage according to another exemplary embodiment of the present invention. More specifically, FIG. 3 is a method for removing duplicate web pages that does not require a process of converting a relative address included in a link to an absolute address among links included in the content of the web page.

도 3을 참조하면, 중복 웹페이지 제거 장치(100)는 크롤링 수행시 수집된 웹페이지를 입력받는다(S310).Referring to FIG. 3, the apparatus 100 for removing a duplicate webpage receives a webpage collected when performing a crawl (S310).

이어서, 중복 웹페이지 제거 장치(100)는 입력받은 웹페이지로부터 기준주소를 추출한다(S320). 여기서, 기준주소는 현재 입력받은 웹페이지의 주소이다.Subsequently, the apparatus for removing duplicate web pages 100 extracts a reference address from the received web page (S320). Here, the reference address is the address of the web page currently input.

이어서, 중복 웹페이지 제거 장치(100)는 추출한 기준주소와 웹페이지의 내용을 병합한다(S330).Subsequently, the apparatus for removing duplicate web pages 100 merges the extracted reference addresses with the contents of the web pages (S330).

예를 들어, 기준주소가 "http://a.b.c/x/y/"이고 웹페이지의 내용이 "<html><body>this is test<a href=z.html></body></html>" 이면 병합된 결과는 http://a.b.c/x/y/<html><body>this is test<a href=z.html></body></html>"가 된다. For example, the base address is "http: // abc / x / y /" and the content of the web page is "<html> <body> this is test <a href=z.html> </ body> </ html > "Then the merged result is http: // abc / x / y / <html> <body> this is test <a href=z.html> </ body> </ html>".

이어서, 중복 웹페이지 제거 장치(100)는 병합된 결과를 해시함수를 이용하여 해시값을 계산한다(S340).Subsequently, the apparatus 100 for removing duplicate web pages calculates a hash value using a hash function of the merged result (S340).

이어서, 중복 웹페이지 제거 장치(100)는 계산된 해시값이 중복 웹페이지 제거 장치에 저장된 해시값 리스트에 존재하는지 여부를 판단하고(S350), 판단 결과, 해시값이 해시값 리스트에 존재하는 경우 해당 웹페이지를 저장하지 않는다(S360).Subsequently, the duplicate webpage removing apparatus 100 determines whether the calculated hash value exists in the hash value list stored in the duplicate webpage removing apparatus (S350), and when the hash value exists in the hash value list, as a result of the determination. Do not save the web page (S360).

또한, 판단 결과, 해시값이 해시값 리스트에 존재하지 않는 경우, 해시값 리스트에 해시값을 추가하고(S370), 해당 웹페이지를 저장한다(S380).If the hash value does not exist in the hash value list as a result of the determination, the hash value is added to the hash value list (S370), and the corresponding web page is stored (S380).

상술한 중복 웹페이지 제거 방법은 중복 웹페이지가 같은 디렉토리에 저장되어 있는 경우에만 제거할 수 있다.The above-described method of removing duplicate web pages can be removed only when duplicate web pages are stored in the same directory.

본 발명의 실시예에 따른 중복 웹페이지 제거 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조등을 단독으로 또는 조합하여 포함할 수 있다. Duplicate web page removal method according to an embodiment of the present invention is implemented in the form of program instructions that can be executed by various computer means may be recorded on a computer readable medium. Computer-readable media may include, alone or in combination with the program instructions, data files, data structures, and the like.

컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 또한 상술한 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. The program instructions recorded on the computer readable medium may be those specially designed and constructed for the present invention, or may be known and available to those skilled in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Hardware devices specially configured to store and execute program instructions such as magneto-optical media and ROM, RAM, flash memory and the like. In addition, the above-described medium may be a transmission medium such as an optical or metal wire, a waveguide, or the like including a carrier wave for transmitting a signal specifying a program command, a data structure, and the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like.

상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The hardware device described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할수 있을 것이다.Although the above has been described with reference to a preferred embodiment of the present invention, those skilled in the art to which the present invention pertains without departing from the spirit and scope of the invention as set forth in the claims below It will be appreciated that modifications and variations can be made.

도 1은 본 발명의 일 실시예에 따른 중복 웹페이지 제거 장치의 구성도이다.1 is a block diagram of an apparatus for removing duplicate web pages according to an embodiment of the present invention.

도 2는 본 발명의 일 실시예에 따른 중복 웹페이지 제거 방법을 나타낸 흐름도이다.2 is a flowchart illustrating a method of removing duplicate web pages according to an embodiment of the present invention.

도 3은 본 발명의 다른 실시예에 따른 중복 웹페이지 제거 방법을 나타낸 흐름도이다.3 is a flowchart illustrating a method of removing a duplicate webpage according to another exemplary embodiment of the present invention.

<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>

110: 웹페이지 입력부 120: 주소 변환부110: web page input unit 120: address conversion unit

130: 해시값 계산부 140: 웹페이지 저장부130: hash value calculator 140: web page storage unit

150: 해시값 리스트 저장부 160: 제어부150: hash value list storage unit 160: control unit

Claims (10)

웹페이지 검색 서비스를 제공하는 웹페이지 검색 서버가 크롤링(crawling) 수행시 중복 웹페이지를 제거하는 중복 웹페이지 제거 장치에 있어서,In the apparatus for removing duplicate web pages that removes duplicate web pages when a web page search server that provides a web page search service crawls, 상기 크롤링 수행시 수집된 웹페이지를 입력받는 웹페이지 입력부;A web page input unit for receiving a web page collected when the crawl is performed; 상기 입력된 웹페이지의 내용에 포함된 상대주소를 절대주소로 변환하는 주소 변환부;An address conversion unit for converting a relative address included in the content of the input web page into an absolute address; 상기 절대주소로 변환된 절대주소 웹페이지의 해시값을 계산하는 해시값 계산부;A hash value calculator configured to calculate a hash value of the absolute address web page converted to the absolute address; 웹페이지 저장부 ;Web page storage; 해시값 리스트 저장부; 및A hash value list storage unit; And 상기 해시값 계산부에 의해 계산된 해시값이 상기 해시값 리스트 저장부의 해시값 리스트에 존재하는지 여부를 판단하고, 해당 해시값이 존재하지 않을 경우, 상기 해시값을 해시값 리스트에 추가하고, 상기 수집된 웹페이지를 상기 웹페이지 저장부에 저장하는 제어부를 포함하는 중복 웹페이지 제거 장치. It is determined whether the hash value calculated by the hash value calculator is present in the hash value list of the hash value list storage unit. If the hash value does not exist, the hash value is added to the hash value list, and And a control unit for storing the collected web page in the web page storage unit. 제1항에 있어서,The method of claim 1, 상기 절대주소는 기준주소에 상기 상대주소를 합하여 생성하되,The absolute address is generated by adding the relative address to the reference address, 상기 기준주소는 입력받은 웹페이지의 주소이고, 상기 상대주소는 웹페이지 의 내용 중 링크에 포함된 주소인 것을 특징으로 하는 중복 웹페이지 제거 장치.And the reference address is an address of an input web page, and the relative address is an address included in a link among contents of the web page. 제1항에 있어서,The method of claim 1, 상기 해시값은 해시함수를 이용하여 계산하되,The hash value is calculated using a hash function, 상기 해시함수는 MD5(message digest 5), SHA1(secure hash algorithm 1) 중 어느 하나인 것을 특징으로 하는 중복 웹페이지 제거 장치.The hash function is a duplicate web page removal apparatus, characterized in that any one of MD5 (message digest 5), SHA1 (secure hash algorithm 1). 제1항에 있어서,The method of claim 1, 상기 웹페이지는 유선 또는 무선 인터넷용 웹페이지인 것을 특징으로 하는 중복 웹페이지 제거 장치.Device for removing a duplicate web page, characterized in that the web page is a web page for a wired or wireless Internet. 웹페이지 검색 서비스를 제공하는 웹페이지 검색 서버의 크롤링(crawling) 수행시 중복 웹페이지 제거 장치가 중복 웹페이지를 제거하는 중복 웹페이지 제거 방법에 있어서,In the method of removing duplicate web pages when the web page search server that provides the web page search service crawls the duplicate web page removal device, the duplicate web page is removed. 상기 크롤링 수행시 찾은 웹페이지를 입력받는 단계;Receiving a web page found when the crawl is performed; 상기 웹페이지 내용에 포함된 상대주소를 절대주소로 변환하는 단계;Converting a relative address included in content of the web page into an absolute address; 상기 절대주소를 포함하는 웹페이지의 해시값을 계산하는 단계; 및Calculating a hash value of the web page including the absolute address; And 상기 해시값이 해시값 리스트에 존재하는 여부를 판단하고, 존재하는 경우, 웹페이지를 저장하지 않고, 존재하지 않는 경우, 상기 해시값을 상기 해시값 리스트에 추가하고 상기 웹페이지를 저장하는 단계를 포함하는 중복 웹페이지 제거 방법.Determining whether the hash value exists in the hash value list, and if not present, not storing the web page, and if not, adding the hash value to the hash value list and storing the web page. How to remove duplicate webpages that you include. 웹페이지 검색 서비스를 제공하는 웹페이지 검색 서버의 크롤링(crawling) 수행시 중복 웹페이지 제거 장치가 중복 웹페이지를 제거하는 중복 웹페이지 제거 방법에 있어서,In the method of removing duplicate web pages when the web page search server that provides the web page search service crawls the duplicate web page removal device, the duplicate web page is removed. 상기 크롤링 수행시 찾은 웹페이지를 입력받는 단계;Receiving a web page found when the crawl is performed; 상기 입력받은 웹페이지의 주소를 추출하는 단계;Extracting the address of the received web page; 상기 주소와 상기 웹페이지의 내용을 병합하는 단계;Merging the contents of the web page with the address; 상기 병합된 결과의 해시값을 계산하는 단계; 및Calculating a hash value of the merged result; And 상기 해시값이 해시값 리스트에 존재하는 여부를 판단하고, 존재하는 경우, 웹페이지를 저장하지 않고, 존재하지 않는 경우, 상기 해시값을 상기 해시값 리스트에 추가하고 상기 웹페이지를 저장하는 단계를 포함하는 중복 웹페이지 제거 방법.Determining whether the hash value exists in the hash value list, and if not present, not storing the web page, and if not, adding the hash value to the hash value list and storing the web page. How to remove duplicate webpages that you include. 제5항 내지 제6항에 있어서,The method according to claim 5, wherein 상기 해시값은 해시함수를 이용하여 계산하되,The hash value is calculated using a hash function, 상기 해시함수는 MD5(message digest 5), SHA1(secure hash algorithm 1) 중 어느 하나인 것을 특징으로 하는 중복 웹페이지 제거 방법.The hash function is a method of removing a duplicate web page, characterized in that any one of the message digest 5 (MD5), secure hash algorithm 1 (SHA1). 제5항 내지 제6항에 있어서,The method according to claim 5, wherein 상기 웹페이지는 유선 또는 무선 인터넷용 웹페이지인 것을 특징으로 하는 중복 웹페이지 제거 방법.The web page is a duplicate web page removal method, characterized in that the web page for a wired or wireless Internet. 중복 웹페이지 제거 방법을 수행하는 전자기기가 판독 가능한 중복 웹페이지 제거 방법을 수행하는 프로그램을 기록한 기록매체에 있어서,Claims [1] A recording medium having recorded thereon a program for performing a method for removing duplicate web pages, which is readable by an electronic device performing the method for removing duplicate web pages. 상기 크롤링 수행시 찾은 웹페이지를 입력받는 단계;Receiving a web page found when the crawl is performed; 상기 웹페이지 내용에 포함된 상대주소를 절대주소로 변환하는 단계;Converting a relative address included in content of the web page into an absolute address; 상기 절대주소를 포함하는 웹페이지의 해시값을 계산하는 단계;Calculating a hash value of the web page including the absolute address; 상기 해시값이 해시값 리스트에 존재하는 여부를 판단하고, 존재하는 경우, 웹페이지를 저장하지 않고, 존재하지 않는 경우, 상기 해시값을 상기 해시값 리스트에 추가하고 상기 웹페이지를 저장하는 단계를 포함하는 중복 웹페이지 제거 방법을 수행하는 프로그램이 기록된 전자기기가 판독 가능한 기록매체.Determining whether the hash value exists in the hash value list, and if not present, not storing the web page, and if not, adding the hash value to the hash value list and storing the web page. A recording medium readable by an electronic device in which a program for performing a method of removing duplicate web pages is included. 중복 웹페이지 제거 방법을 수행하는 전자기기가 판독 가능한 중복 웹페이지 제거 방법을 수행하는 프로그램을 기록한 기록매체에 있어서,Claims [1] A recording medium having recorded thereon a program for performing a method for removing duplicate web pages, which is readable by an electronic device performing the method for removing duplicate web pages. 상기 크롤링 수행시 찾은 웹페이지를 입력받는 단계;Receiving a web page found when the crawl is performed; 상기 입력받은 웹페이지의 주소를 추출하는 단계;Extracting the address of the received web page; 상기 주소와 상기 웹페이지의 내용을 병합하는 단계;Merging the contents of the web page with the address; 상기 병합된 결과의 해시값을 계산하는 단계; 및Calculating a hash value of the merged result; And 상기 해시값이 해시값 리스트에 존재하는 여부를 판단하고, 존재하는 경우, 웹페이지를 저장하지 않고, 존재하지 않는 경우, 상기 해시값을 상기 해시값 리스트에 추가하고 상기 웹페이지를 저장하는 단계를 포함하는 중복 웹페이지 제거 방법을 수행하는 프로그램이 기록된 전자기기가 판독 가능한 기록매체.Determining whether the hash value exists in the hash value list, and if not present, not storing the web page, and if not, adding the hash value to the hash value list and storing the web page. A recording medium readable by an electronic device in which a program for performing a method of removing duplicate web pages is included.
KR1020080068961A 2008-07-16 2008-07-16 Apparatus and method for eliminating double webpage KR20100008466A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080068961A KR20100008466A (en) 2008-07-16 2008-07-16 Apparatus and method for eliminating double webpage

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080068961A KR20100008466A (en) 2008-07-16 2008-07-16 Apparatus and method for eliminating double webpage

Publications (1)

Publication Number Publication Date
KR20100008466A true KR20100008466A (en) 2010-01-26

Family

ID=41817073

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080068961A KR20100008466A (en) 2008-07-16 2008-07-16 Apparatus and method for eliminating double webpage

Country Status (1)

Country Link
KR (1) KR20100008466A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102231762B1 (en) 2020-12-29 2021-03-24 (주)케이엔랩 Distributed web crawling method, distributed web crawling system and computer program for the same
US11550996B2 (en) 2019-12-17 2023-01-10 Naver Corporation Method and system for detecting duplicate document using vector quantization
US11631270B2 (en) 2019-12-11 2023-04-18 Naver Corporation Methods and systems for detecting duplicate document using document similarity measuring model based on deep learning

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11631270B2 (en) 2019-12-11 2023-04-18 Naver Corporation Methods and systems for detecting duplicate document using document similarity measuring model based on deep learning
US11550996B2 (en) 2019-12-17 2023-01-10 Naver Corporation Method and system for detecting duplicate document using vector quantization
KR102231762B1 (en) 2020-12-29 2021-03-24 (주)케이엔랩 Distributed web crawling method, distributed web crawling system and computer program for the same

Similar Documents

Publication Publication Date Title
US9087049B2 (en) System and method for context translation of natural language
JP5222581B2 (en) System and method for annotating documents
US10216848B2 (en) Method and system for recommending cloud websites based on terminal access statistics
US20120239667A1 (en) Keyword extraction from uniform resource locators (urls)
US11604843B2 (en) Method and system for generating phrase blacklist to prevent certain content from appearing in a search result in response to search queries
US8037053B2 (en) System and method for generating an online summary of a collection of documents
JP2009003930A (en) Method and system for providing navigable search result
CN108491715B (en) Terminal fingerprint database generation method and device and server
JPH11195025A (en) Linking device for document data, display and access device for link destination address and distribution device for linked document data
US9984052B2 (en) Verifying content of resources in markup language documents
CN112328548A (en) File retrieval method and computing device
WO2017063596A1 (en) Method, apparatus and device for processing sitemap
CN103544172A (en) Method and device for processing chapter catalogs of E-book
KR20100008466A (en) Apparatus and method for eliminating double webpage
CN111177082B (en) PDF file duplicate removal storage method and system
CN109657472B (en) SQL injection vulnerability detection method, device, equipment and readable storage medium
CN111324832A (en) Method, system, device and medium for accessing website through short network address
CN108460116B (en) Search method, search device, computer equipment, storage medium and search system
JP4885678B2 (en) Content creation apparatus and content creation method
CN109145220B (en) Data processing method and device and electronic equipment
JP5374938B2 (en) Related information registration apparatus, related information registration method, and related information registration program
KR101498920B1 (en) Web page pre-caching system and method for offline-executing
CN107451160B (en) Page pre-reading method and device
JP5223293B2 (en) POSITION EXPRESSION EXTRACTION DEVICE, METHOD, AND PROGRAM
CN112347324A (en) Document query method and device, electronic equipment and storage medium

Legal Events

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