KR102399642B1 - Apparatus and method for crawling item data using emulator - Google Patents
Apparatus and method for crawling item data using emulator Download PDFInfo
- Publication number
- KR102399642B1 KR102399642B1 KR1020200080921A KR20200080921A KR102399642B1 KR 102399642 B1 KR102399642 B1 KR 102399642B1 KR 1020200080921 A KR1020200080921 A KR 1020200080921A KR 20200080921 A KR20200080921 A KR 20200080921A KR 102399642 B1 KR102399642 B1 KR 102399642B1
- Authority
- KR
- South Korea
- Prior art keywords
- user
- product
- target
- crawling
- detailed information
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0639—Item locations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0641—Shopping interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Economics (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
통합 플랫폼에 상품 기본 정보 목록을 최신 상태로 유지함과 동시에, 이 과정에서 발생하는 과도하거나 빈번한 크롤링을 감소시킴으로써 크롤링 서버 및 크롤링 대상 시스템의 리소스 부하를 줄일 수 있는 에뮬레이터를 활용한 상품 데이터 크롤링 장치 및 방법, 기록 매체가 개시된다. 본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 장치는 쇼핑몰 사이트에서 상품의 상품명과 썸네일 및 가격을 포함하는 기본 목록 구성 정보와, 상품의 상세 정보 중 기본 목록 구성 정보만 크롤링하도록 구성되는 크롤링 모듈; 다양한 쇼핑몰 사이트로부터 다양한 상품에 대해 수집된 기본 목록 구성 정보를 기반으로 다양한 쇼핑몰 사이트가 통합된 사용자 대상 사이트를 생성하고, 사용자 디바이스로부터 사용자 대상 사이트에서 적어도 하나의 사용자 대상 상품에 대한 상세 정보 요청을 입력받도록 구성되는 사용자 대상 사이트 생성 모듈; 및 사용자 디바이스를 통해 대상 쇼핑몰 사이트에서 사용자 대상 상품의 상세 정보를 수집하여 데이터베이스에 저장시키도록 구성되는 에뮬레이터 모듈을 포함한다.Apparatus and method for crawling product data using an emulator that can reduce the resource load of the crawling server and the crawled system by reducing the excessive or frequent crawling that occurs in the process while keeping the list of basic product information up to date on the integrated platform , a recording medium is disclosed. A crawling device for crawling product data using an emulator according to an embodiment of the present invention is configured to crawl only basic list configuration information including product names, thumbnails, and prices of products on a shopping mall site, and basic list configuration information among detailed product information. module; Create a user target site in which various shopping mall sites are integrated based on the basic list configuration information collected for various products from various shopping mall sites, and input a detailed information request for at least one user target product in the user target site from the user device a user-targeted site creation module configured to receive; and an emulator module configured to collect detailed information of a user target product from a target shopping mall site through the user device and store the collected information in a database.
Description
본 발명은 에뮬레이터(emulator)를 활용한 상품 데이터 크롤링 장치 및 방법에 관한 것으로, 보다 상세하게는 통합 플랫폼에 상품 기본 정보 목록을 최신 상태로 유지함과 동시에, 이 과정에서 발생하는 과도하거나 빈번한 크롤링을 감소시킴으로써 크롤링 서버 및 크롤링 대상 시스템의 리소스 부하를 줄일 수 있는 에뮬레이터를 활용한 상품 데이터 크롤링 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for crawling product data using an emulator, and more particularly, to keep a list of basic product information on an integrated platform up to date and at the same time reduce excessive or frequent crawling that occurs in this process By doing so, it relates to an apparatus and method for crawling product data using an emulator that can reduce the resource load of a crawling server and a crawling target system.
최근 인터넷을 통해 쇼핑몰 등의 서비스를 제공하는 서비스 공급자의 경우 사용자 유입 채널을 늘리고 유저 풀을 공유할 수 있으며, 수요자의 경우에는 한 곳에서 여러 플랫폼의 데이터를 모아서 볼 수 있는 메타 서비스가 각광받고 있다. 이와 같은 메타 서비스는 일반적으로 크롤링(crawling)을 통해 웹 사이트로부터 정보를 수집한다. 현재의 웹 사이트 크롤링 방식은 응용 프로그램 인터페이스(API; Application Program Interface)를 사용하여 호출된 값을 받아오거나 웹 사이트의 각 페이지로 직접 접근하여 해당 페이지 내 데이터를 모으는 방식으로 구현되고 있다.Recently, service providers that provide services such as shopping malls through the Internet can increase user inflow channels and share user pools. . Such meta-services generally collect information from web sites through crawling. The current web site crawling method is implemented by receiving a value called using an application program interface (API) or by directly accessing each page of the web site to collect data within the corresponding page.
이와 같은 종래의 웹 사이트 직접 접근 방식은 일정 시간 내 빈번한 접근 시도시 웹 사이트로의 접근이 쉽게 차단되는 문제가 있다. 웹 사이트는 기본적으로 불특정 상대가 자신의 웹 페이지를 스크랩하지 못하게 막도록 설정될 수 있으며, 이로 인해 웹 사이트로부터 접근이 차단되거나 데이터 크롤링이 제한될 수 있는 한계가 있다.Such a conventional web site direct access method has a problem in that access to the web site is easily blocked when frequent access attempts are made within a predetermined time. A website may be set to prevent an unspecified party from scraping its own web page by default, and this has limitations in which access from the website may be blocked or data crawling may be restricted.
또한, 종래에는 사용자가 비교를 원하는 여러 사이트에 각각 접근하여 데이터를 수집하고, 각 사이트에서 수집한 데이터를 비교, 분석하는 과정을 거쳐야 하므로, 조회 과정이 번거롭고 불편한 문제가 있었다. 또한, 트렌드에 민감한 커머스의 경우 그 특성상 웹 사이트에 항상 최신 목록을 유지해야 할 필요성이 있으나, 이를 유지하는 과정에서 발생하는 과도하거나 빈번한 크롤링은 크롤링 주체 시스템 뿐 아니라 크롤링 대상인 시스템에도 리소스 부하를 주게 되는 문제가 있다.In addition, in the prior art, since the user has to go through a process of collecting data by accessing various sites for which a user wants to compare, and comparing and analyzing the data collected from each site, the inquiry process is cumbersome and inconvenient. In addition, in the case of trend-sensitive commerce, it is necessary to always keep an up-to-date list on the website due to the nature of it. there is a problem.
본 발명은 통합 플랫폼에 상품 기본 정보 목록을 최신 상태로 유지함과 동시에, 이 과정에서 발생하는 과도하거나 빈번한 크롤링을 감소시킴으로써 크롤링 서버 및 크롤링 대상 시스템의 리소스 부하를 줄일 수 있는 에뮬레이터를 활용한 상품 데이터 크롤링 장치 및 방법, 기록 매체를 제공하기 위한 것이다.Product data crawling using an emulator that can reduce the resource load of the crawling server and the crawling target system by reducing the excessive or frequent crawling that occurs in the process while keeping the basic product information list up to date on the integrated platform To provide an apparatus and method, and a recording medium.
또한, 본 발명은 상품의 기본 목록 구성만을 크롤링한 후, 상품의 상세 정보를 요청한 사용자 디바이스를 통해 웹 사이트의 상품 상세 정보를 간접적으로 전달받아 상품 상세 데이터를 수집함으로써 서버의 크롤링 부담을 줄이고 웹 사이트에 의한 크롤링 제한을 방지할 수 있는 에뮬레이터를 활용한 상품 데이터 크롤링 장치 및 방법, 기록 매체를 제공하기 위한 것이다.In addition, the present invention reduces the crawling burden of the server and reduces the crawling burden of the server by collecting detailed product data by indirectly receiving detailed product information of a website through a user device that has requested detailed product information after crawling only the basic list of products. An object of the present invention is to provide an apparatus and method for crawling product data using an emulator capable of preventing crawling restrictions, and a recording medium.
또한, 본 발명은 크롤링 대상 쇼핑몰의 상품 선호도(우선 순위) 기반으로 선택적으로 상품 상세 정보를 수집하여, 일부 상품에 대한 상세 정보만을 수집하여 전체 상품에 대한 상세 정보를 수집한 것에 가까운 효과를 발휘할 수 있는 에뮬레이터를 활용한 상품 데이터 크롤링 장치 및 방법, 기록 매체를 제공하기 위한 것이다.In addition, the present invention selectively collects detailed product information based on product preference (priority) of the crawling target shopping mall, and collects only detailed information on some products, thereby exhibiting an effect close to collecting detailed information on all products. It is to provide an apparatus and method for crawling product data using an emulator, and a recording medium.
본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 장치는, 다양한 쇼핑몰 사이트에서 상품의 상품명과 썸네일 및 가격을 포함하는 기본 목록 구성 정보와, 상기 상품의 상세 정보 중 상기 기본 목록 구성 정보만 크롤링하도록 구성되는 크롤링 모듈; 상기 다양한 쇼핑몰 사이트로부터 다양한 상품에 대해 각각 상기 기본 목록 구성 정보를 크롤링하여 수집된 상기 다양한 상품에 관한 상품 데이터를 저장하도록 구성되는 데이터베이스; 상기 데이터베이스에 저장된 상기 상품 데이터로부터 상기 다양한 쇼핑몰 사이트가 통합된 사용자 대상 사이트를 생성하고, 사용자 디바이스로부터 상기 사용자 대상 사이트에서 적어도 하나의 사용자 대상 상품에 대한 상세 정보 요청을 입력받도록 구성되는 사용자 대상 사이트 생성 모듈; 및 상기 사용자 대상 사이트에 생성된 사용자 대상 상품에 대해 상기 사용자 디바이스로부터 상기 상세 정보 요청이 입력되면, 상기 사용자 디바이스를 통해 상기 사용자 대상 상품에 대응되는 대상 쇼핑몰 사이트에서 상기 사용자 대상 상품의 상세 정보를 수집하여 상기 데이터베이스에 저장시키도록 구성되는 에뮬레이터 모듈;을 포함한다.The device for crawling product data using an emulator according to an embodiment of the present invention crawls only basic list configuration information including product names, thumbnails, and prices of products in various shopping mall sites, and the basic list configuration information among detailed information of the products a crawling module configured to; a database configured to store product data on the various products collected by crawling the basic list configuration information for various products from the various shopping mall sites, respectively; A user target site is generated from the product data stored in the database, the various shopping mall sites are integrated, and a user target site is created, configured to receive a request for detailed information on at least one user target product from a user device at the user target site module; and when the detailed information request is inputted from the user device for the user target product created on the user target site, the detailed information of the user target product is collected from the target shopping mall site corresponding to the user target product through the user device and an emulator module configured to be stored in the database.
상기 에뮬레이터 모듈은, 상기 사용자 디바이스로 하여금 상기 사용자 대상 상품에 해당하는 상품 데이터를 수집한 상기 대상 쇼핑몰 사이트에 상기 상세 정보를 열람하게 하고; 상기 사용자 디바이스에서 상기 대상 쇼핑몰 사이트를 열람한 상기 사용자 대상 상품의 상세 정보를 상기 사용자 디바이스로부터 전달받고; 그리고 상기 사용자 디바이스로부터 전달받은 상기 상세 정보를 상기 사용자 대상 상품에 관한 상품 데이터에 포함시켜 상기 데이터베이스에 저장시키도록 구성될 수 있다.the emulator module causes the user device to view the detailed information on the target shopping mall site that has collected product data corresponding to the user target product; receiving, from the user device, detailed information of the product for the user who has viewed the target shopping mall site in the user device; And it may be configured to include the detailed information received from the user device in the product data related to the user target product to be stored in the database.
상기 에뮬레이터 모듈은, 상기 사용자 디바이스로부터 상기 사용자 대상 상품에 대해 상기 상세 정보 요청이 입력되면, 상기 사용자 대상 상품의 상세 정보가 상기 데이터베이스에 저장되어 있는지 판단하고; 상기 사용자 대상 상품의 상세 정보가 상기 데이터베이스에 저장되어 있는 경우, 상기 데이터베이스에 저장된 상세 정보를 상기 사용자 대상 사이트를 통해 상기 사용자 디바이스로 제공하고; 상기 사용자 대상 상품의 상세 정보가 상기 데이터베이스에 저장되어 있지 않은 경우, 상기 사용자 디바이스에서 응용 프로그램 어플리케이션을 실행하여 상기 대상 쇼핑몰 사이트에 접근하게 하고; 그리고 상기 사용자 디바이스에서 실행되는 응용 프로그램 어플리케이션에 의해 상기 대상 쇼핑몰 사이트로부터 상세 정보를 수집하여 상기 데이터베이스에 저장하도록 구성될 수 있다. 상기 상세 정보는, 상기 사용자 대상 상품의 상품 상세 이미지, 크기, 중량, 재질, 색상 및 부가 설명을 포함할 수 있다.The emulator module, when the detailed information request for the user target product from the user device is input, determine whether the detailed information of the user target product is stored in the database; when the detailed information of the user target product is stored in the database, providing the detailed information stored in the database to the user device through the user target site; when the detailed information of the user target product is not stored in the database, execute an application program application on the user device to access the target shopping mall site; And it may be configured to collect detailed information from the target shopping mall site by an application program executed on the user device and store it in the database. The detailed information may include a detailed product image, size, weight, material, color, and additional description of the product for the user.
상기 크롤링 모듈은, 상기 다양한 대상 쇼핑몰 사이트 별로 상기 기본 목록 구성 정보의 배열 패턴을 분석하고, 상기 배열 패턴을 기반으로 크롤링 대상 블록 및 상기 크롤링 대상 블록의 속성 및 필드를 지정하도록 구성되는 크롤링 대상 분석기; 및 상기 다양한 대상 쇼핑몰 사이트로부터 상기 크롤링 대상 블록 및 상기 크롤링 대상 블록의 속성 및 필드를 기반으로 상기 기본 목록 구성 정보를 크롤링하도록 구성되는 크롤러;를 포함할 수 있다.The crawling module may include: a crawling target analyzer configured to analyze an arrangement pattern of the basic list configuration information for each of the various target shopping mall sites, and to designate a crawling target block and properties and fields of the crawling target block based on the arrangement pattern; and a crawler configured to crawl the basic list configuration information based on the crawling target block and attributes and fields of the crawling target block from the various target shopping mall sites.
상기 사용자 대상 사이트 생성 모듈은, 상기 다양한 대상 쇼핑몰 사이트로부터 수집되는 상기 다양한 상품에 대한 상품 데이터를 지정된 객체 패턴으로 통합하여 상기 사용자 대상 사이트에 표시하도록 구성될 수 있다.The user target site creation module may be configured to integrate product data for the various products collected from the various target shopping mall sites into a designated object pattern and display the integrated product data on the user target site.
상기 에뮬레이터 모듈은, 상기 대상 쇼핑몰 사이트에 포함된 상품들 중, 상기 상세 정보 요청이 입력된 상기 사용자 대상 상품의 선호도 순위를 판단하고; 상기 사용자 대상 상품의 선호도 순위가 기 설정된 순위 조건을 만족하는지 판단하고; 상기 사용자 대상 상품의 선호도 순위가 상기 기 설정된 순위 조건을 만족하면, 상기 사용자 디바이스를 통해 상기 대상 쇼핑몰 사이트에서 상기 사용자 대상 상품의 상세 정보를 수집하고; 그리고 상기 사용자 대상 상품의 선호도 순위가 상기 기 설정된 순위 조건을 만족하지 않으면, 상기 사용자 디바이스를 통해 상기 사용자 대상 상품의 상세 정보를 수집하지 않도록 구성될 수 있다.The emulator module is configured to: determine a preference ranking of the user target product to which the detailed information request is input, among products included in the target shopping mall site; determining whether the preference ranking of the user target product satisfies a preset ranking condition; collecting detailed information of the user target product from the target shopping mall site through the user device when the preference ranking of the user target product satisfies the preset ranking condition; And when the preference ranking of the user target product does not satisfy the preset ranking condition, it may be configured not to collect detailed information of the user target product through the user device.
본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 방법은, 크롤링 모듈에 의해, 다양한 쇼핑몰 사이트에서 상품의 상품명과 썸네일 및 가격을 포함하는 기본 목록 구성 정보와, 상기 상품의 상세 정보 중 상기 기본 목록 구성 정보 만을 크롤링하는 단계; 상기 다양한 쇼핑몰 사이트로부터 다양한 상품에 대해 각각 상기 기본 목록 구성 정보를 크롤링하여 수집된 상기 다양한 상품에 관한 상품 데이터를 데이터베이스에 저장하는 단계; 사용자 대상 사이트 생성 모듈에 의해, 상기 데이터베이스에 저장된 상기 상품 데이터로부터 상기 다양한 쇼핑몰 사이트가 통합된 사용자 대상 사이트를 생성하는 단계; 상기 사용자 대상 사이트 생성 모듈에 의해, 사용자 디바이스로부터 상기 사용자 대상 사이트에서 적어도 하나의 사용자 대상 상품에 대한 상세 정보 요청을 입력받는 단계; 및 에뮬레이터 모듈에 의해, 상기 사용자 대상 상품에 대해 상기 사용자 디바이스로부터 상기 상세 정보 요청이 입력되면 상기 사용자 디바이스를 통해 상기 사용자 대상 상품에 대응되는 대상 쇼핑몰 사이트에서 상기 사용자 대상 상품의 상세 정보를 수집하는 단계;를 포함한다.The product data crawling method using the emulator according to an embodiment of the present invention includes, by a crawling module, basic list configuration information including product names, thumbnails, and prices of products in various shopping mall sites, and the basic among detailed information of the products crawling only list configuration information; storing product data on the various products collected by crawling the basic list configuration information for various products from the various shopping mall sites in a database; generating, by a user target site creation module, a user target site in which the various shopping mall sites are integrated from the product data stored in the database; receiving, by the user target site creation module, a request for detailed information on at least one user target product at the user target site from a user device; and collecting, by the emulator module, detailed information of the user target product from the target shopping mall site corresponding to the user target product through the user device when the detailed information request for the user target product is input from the user device includes ;
상기 사용자 대상 상품의 상세 정보를 수집하는 단계는, 상기 사용자 디바이스로 하여금 상기 사용자 대상 상품에 해당하는 상품 데이터를 수집한 상기 대상 쇼핑몰 사이트에 상기 상세 정보를 열람하게 하는 단계; 상기 사용자 디바이스에서 상기 대상 쇼핑몰 사이트를 열람한 상기 사용자 대상 상품의 상세 정보를 상기 사용자 디바이스로부터 전달받는 단계; 및 상기 사용자 디바이스로부터 전달받은 상기 상세 정보를 상기 사용자 대상 상품에 관한 상품 데이터에 포함시켜 상기 데이터베이스에 저장시키는 단계;를 포함할 수 있다.The collecting of the detailed information of the user target product may include: allowing the user device to view the detailed information on the target shopping mall site that has collected product data corresponding to the user target product; receiving, from the user device, detailed information of the product for the user who has read the target shopping mall site from the user device; and storing the detailed information received from the user device in the product data related to the user target product and storing it in the database.
상기 사용자 대상 상품의 상세 정보를 수집하는 단계는, 상기 사용자 디바이스로부터 상기 사용자 대상 상품에 대해 상기 상세 정보 요청이 입력되면, 상기 사용자 대상 상품의 상세 정보가 상기 데이터베이스에 저장되어 있는지 판단하는 단계; 상기 사용자 대상 상품의 상세 정보가 상기 데이터베이스에 저장되어 있는 경우, 상기 데이터베이스에 저장된 상세 정보를 상기 사용자 대상 사이트를 통해 상기 사용자 디바이스로 제공하는 단계; 상기 사용자 대상 상품의 상세 정보가 상기 데이터베이스에 저장되어 있지 않은 경우, 상기 사용자 디바이스에서 응용 프로그램 어플리케이션을 실행하여 상기 대상 쇼핑몰 사이트에 접근하게 하는 단계; 및 상기 사용자 디바이스에서 실행되는 응용 프로그램 어플리케이션에 의해 상기 대상 쇼핑몰 사이트로부터 상세 정보를 수집하여 상기 데이터베이스에 저장하는 단계;를 포함할 수 있다.The collecting of the detailed information of the user target product may include, when the detailed information request for the user target product is input from the user device, determining whether the detailed information of the user target product is stored in the database; providing the detailed information stored in the database to the user device through the user target site when the detailed information of the user target product is stored in the database; when the detailed information of the user target product is not stored in the database, executing an application program in the user device to access the target shopping mall site; and collecting detailed information from the target shopping mall site by an application program executed on the user device and storing the detailed information in the database.
상기 크롤링하는 단계는, 크롤링 대상 분석기에 의해, 상기 다양한 대상 쇼핑몰 사이트 별로 상기 기본 목록 구성 정보의 배열 패턴을 분석하고, 상기 배열 패턴을 기반으로 크롤링 대상 블록 및 상기 크롤링 대상 블록의 속성 및 필드를 지정하는 단계; 및 크롤러에 의해, 상기 다양한 대상 쇼핑몰 사이트로부터 상기 크롤링 대상 블록 및 상기 크롤링 대상 블록의 속성 및 필드를 기반으로 상기 기본 목록 구성 정보를 크롤링하는 단계;를 포함할 수 있다.The crawling includes analyzing, by a crawling target analyzer, an arrangement pattern of the basic list configuration information for each of the various target shopping mall sites, and designating a crawling target block and properties and fields of the crawling target block based on the arrangement pattern to do; and crawling, by a crawler, the basic list configuration information from the various target shopping mall sites based on the crawling target block and attributes and fields of the crawling target block.
상기 사용자 대상 사이트를 생성하는 단계는, 상기 다양한 대상 쇼핑몰 사이트로부터 수집되는 상기 다양한 상품에 대한 상품 데이터를 지정된 객체 패턴으로 통합하여 상기 사용자 대상 사이트에 표시하는 단계를 포함할 수 있다.The generating of the user target site may include integrating product data for the various products collected from the various target shopping mall sites into a specified object pattern and displaying the integrated product data on the user target site.
상기 사용자 대상 상품의 상세 정보를 수집하는 단계는, 상기 대상 쇼핑몰 사이트에 포함된 상품들 중, 상기 상세 정보 요청이 입력된 상기 사용자 대상 상품의 선호도 순위를 판단하는 단계; 상기 사용자 대상 상품의 선호도 순위가 기 설정된 순위 조건을 만족하는지 판단하는 단계; 상기 사용자 대상 상품의 선호도 순위가 상기 기 설정된 순위 조건을 만족하면, 상기 사용자 디바이스를 통해 상기 대상 쇼핑몰 사이트에서 상기 사용자 대상 상품의 상세 정보를 수집하는 단계; 및 상기 사용자 대상 상품의 선호도 순위가 상기 기 설정된 순위 조건을 만족하지 않으면, 상기 사용자 디바이스를 통해 상기 사용자 대상 상품의 상세 정보를 수집하지 않는 단계;를 포함할 수 있다.The collecting of the detailed information of the user target product may include: determining a preference rank of the user target product to which the detailed information request is input, among products included in the target shopping mall site; determining whether the preference ranking of the user target product satisfies a preset ranking condition; collecting detailed information of the user target product from the target shopping mall site through the user device when the preference ranking of the user target product satisfies the preset ranking condition; and if the preference ranking of the user target product does not satisfy the preset ranking condition, not collecting detailed information of the user target product through the user device.
본 발명의 실시예에 따르면, 상기 에뮬레이터를 활용한 상품 데이터 크롤링 방법을 실행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체가 제공된다.According to an embodiment of the present invention, there is provided a computer-readable recording medium in which a program for executing a product data crawling method using the emulator is recorded.
본 발명의 실시예에 의하면, 통합 플랫폼에 상품 기본 정보 목록을 최신 상태로 유지함과 동시에, 이 과정에서 발생하는 과도하거나 빈번한 크롤링을 감소시킴으로써 크롤링 서버 및 크롤링 대상 시스템의 리소스 부하를 줄일 수 있는 에뮬레이터를 활용한 상품 데이터 크롤링 장치 및 방법, 기록 매체가 제공된다.According to an embodiment of the present invention, an emulator capable of reducing the resource load of the crawling server and the crawling target system by reducing the excessive or frequent crawling that occurs in this process while maintaining the product basic information list up to date on the integrated platform A product data crawling apparatus and method, and a recording medium utilized are provided.
또한, 본 발명의 실시예에 의하면, 상품의 기본 목록 구성만을 크롤링한 후, 상품의 상세 정보를 요청한 사용자 디바이스를 통해 웹 사이트의 상품 상세 정보를 간접적으로 전달받아 상품 상세 데이터를 수집함으로써 서버의 크롤링 부담을 줄이고 웹 사이트에 의한 크롤링 제한을 방지할 수 있다.In addition, according to the embodiment of the present invention, after crawling only the basic list of products, the detailed product information of the website is indirectly transmitted through the user device requesting the detailed product information, and the detailed product data is collected by crawling the server. It can reduce the burden and prevent crawling restrictions by the website.
또한, 본 발명의 실시예에 의하면, 크롤링 대상 쇼핑몰의 상품 선호도(우선 순위) 기반으로 선택적으로 상품 상세 정보를 수집하여, 일부 상품에 대한 상세 정보만을 수집하여 전체 상품에 대한 상세 정보를 수집한 것에 가까운 효과를 발휘할 수 있다.In addition, according to an embodiment of the present invention, detailed information about products is selectively collected based on product preference (priority) of the shopping mall to be crawled, and detailed information about all products is collected by collecting only detailed information about some products. can have a close effect.
도 1은 본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 장치의 구성도이다.
도 2는 본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 장치를 구성하는 크롤링 모듈의 구성도이다.
도 3은 본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 장치를 구성하는 크롤링 대상 분석기의 구성도이다.
도 4는 본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 방법의 순서도이다.
도 5는 도 4의 단계 S110을 나타낸 순서도이다.
도 6은 도 4의 단계 S150을 나타낸 순서도이다.
도 7은 도 4의 단계 S150의 다른 예를 나타낸 순서도이다.
도 8은 도 4의 단계 S150의 또 다른 예를 나타낸 순서도이다.1 is a block diagram of an apparatus for crawling product data using an emulator according to an embodiment of the present invention.
2 is a block diagram of a crawling module constituting an apparatus for crawling product data using an emulator according to an embodiment of the present invention.
3 is a block diagram of a crawling target analyzer constituting an apparatus for crawling product data using an emulator according to an embodiment of the present invention.
4 is a flowchart of a product data crawling method using an emulator according to an embodiment of the present invention.
5 is a flowchart illustrating step S110 of FIG. 4 .
6 is a flowchart illustrating step S150 of FIG. 4 .
7 is a flowchart illustrating another example of step S150 of FIG. 4 .
8 is a flowchart illustrating another example of step S150 of FIG. 4 .
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Advantages and features of the present invention and methods of achieving them will become apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in various different forms, and only these embodiments allow the disclosure of the present invention to be complete, and common knowledge in the art to which the present invention pertains It is provided to fully inform those who have the scope of the invention, and the present invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout.
본 명세서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 본 명세서에서 사용되는 '~부, ~모듈'은 적어도 하나의 기능이나 동작을 처리하는 단위로서, 예를 들어 소프트웨어, FPGA 또는 하드웨어 구성요소를 의미할 수 있다. '~부, ~모듈'에서 제공하는 기능은 복수의 구성요소에 의해 분리되어 수행되거나, 다른 추가적인 구성요소와 통합될 수도 있다. 본 명세서의 '~부, ~모듈'은 반드시 소프트웨어 또는 하드웨어에 한정되지 않으며, 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고, 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 이하에서는 도면을 참조하여 본 발명의 실시예에 대해서 구체적으로 설명하기로 한다.In the present specification, when a part "includes" a certain component, it means that other components may be further included, rather than excluding other components, unless otherwise stated. As used herein, '~ unit, ~ module' is a unit that processes at least one function or operation, and may refer to, for example, software, FPGA, or hardware component. The functions provided by '~ unit, ~ module' may be performed separately by a plurality of components, or may be integrated with other additional components. 'Part, ~ module' in this specification is not necessarily limited to software or hardware, and may be configured to be in an addressable storage medium, or may be configured to reproduce one or more processors. Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.
본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 장치 및 그 방법은 통합 플랫폼에 상품 기본 정보 목록을 항상 최신 상태로 유지함과 동시에, 그 과정에서 발생하는 과도하거나 빈번한 크롤링을 감소시킴으로써 시스템 리소스 부하를 줄이기 위해 제공된다.Product data crawling apparatus and method using an emulator according to an embodiment of the present invention, while always keeping the basic product information list up to date on an integrated platform, and reducing excessive or frequent crawling that occurs in the process, system resource load provided to reduce
본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 장치 및 방법은 크롤링 서버에서 다양한 쇼핑몰 사이트에 대해 기본 상품 목록 구성만을 크롤링하도록 하고, 이후 사용자 디바이스가 크롤링 서버에 상품 상세 정보 요청시 해당 사용자 디바이스에서 대상 쇼핑몰 사이트로 접근하게 하여, 사용자 디바이스에서 대상 쇼핑몰 사이트에 조회하여 얻은 데이터를 크롤링 서버로 전송하게 하여 다양한 상품들 중 사용자 디바이스에 의해 요청된 상품에 대한 상세 정보 만을 크롤링할 수 있다.An apparatus and method for crawling product data using an emulator according to an embodiment of the present invention allows the crawling server to crawl only the basic product list configuration for various shopping mall sites, and then, when the user device requests detailed product information from the crawling server, the user device access to the target shopping mall site from the user device, and transmit data obtained by inquiring into the target shopping mall site from the user device to the crawling server, so that only detailed information about the product requested by the user device among various products can be crawled.
도 1은 본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 장치의 구성도이다. 도 1을 참조하면, 본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 장치(100)는 크롤링 대상 쇼핑몰(10)의 상품의 기본 목록 구성 정보(상품의 상품명과 썸네일 및 가격)를 사용자 대상 사이트에 통합하여 제공하고, 상품들 중 사용자에 의해 요청된 상품이 상세 정보를 사용자 디바이스(20)를 통해 수집하는 크롤링 서버(crawling server)로 제공될 수 있다.1 is a block diagram of an apparatus for crawling product data using an emulator according to an embodiment of the present invention. Referring to FIG. 1 , the product
사용자 디바이스(20)는 다양한 쇼핑몰 웹 사이트에서 상품 정보를 조회하여 비교, 분석하고자 하는 사용자의 단말기일 수 있으며, 예를 들어 스마트폰, 스마트패드, 태블릿 PC, 노트북 등의 랩탑(laptop), 데스크탑 컴퓨터 등의 단말기일 수 있으나, 이에 한정되는 것은 아니다.The
상품의 기본 목록 구성 정보는 쇼핑몰 사이트(12, 14, 16)의 상품에 관한 개략적인 정보를 표시하는 화면 상에 제공되는 웹 페이지에 포함된 정보일 수 있다. 따라서, 상품의 기본 목록 구성 정보는 쇼핑몰 사이트(12, 14, 16) 별로 상이할 수 있다.The basic list configuration information of products may be information included in a web page provided on a screen that displays schematic information about products of the
본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 장치(100)는 먼저 각 쇼핑몰 사이트(12, 14, 16)에서 상품의 개략적인 정보를 표시하는 화면에 표시되는 웹 페이지의 데이터에서 설정된 기본 목록 구성에 해당하는 정보를 수집할 수 있다.The product
본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 장치(100)는 사용자 대상 사이트를 통해 다수의 사용자에게 상품 데이터를 제공하고, 다수의 사용자 디바이스(20)를 통해 상품의 상세 정보를 수집하여 다수의 쇼핑몰 사이트를 통합한 상품 정보를 제공하는 서버로 제공될 수 있다.The product
본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 장치(100)는 크롤링 모듈(110), 에뮬레이터 모듈(120), 사용자 대상 사이트 생성 모듈(130) 및 데이터베이스(140)를 포함할 수 있다.The product
크롤링 모듈(110)은 크롤링 대상 쇼핑몰(10)에 해당하는 다양한 쇼핑몰 사이트(12, 14, 16)에서 상품의 상품명과 썸네일 및 가격을 포함하는 기본 목록 구성 정보와, 상품의 상세 정보(예를 들어, 사용자 대상 상품의 상품 상세 이미지, 크기, 중량, 재질, 색상 및 부가 설명 등) 중 기본 목록 구성 정보만 크롤링하도록 구성될 수 있다.The
크롤링 대상 쇼핑몰(10)은 상품의 기본 목록 구성 정보와 상세 정보를 포함하는 원본 데이터(original data)를 보유하고 있는 쇼핑몰 웹 사이트일 수 있으며, 서버에 지정된 쇼핑몰 웹 사이트 또는 관리자 단말기(도시 생략)에 의해 지정된 쇼핑몰 웹 사이트일 수 있으나, 이에 한정되는 것은 아니다.The crawling
도 2는 본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 장치를 구성하는 크롤링 모듈의 구성도이다. 도 1 및 도 2를 참조하면, 크롤링 모듈(110)은 크롤링 대상 분석기(112) 및 크롤러(114)를 포함할 수 있다.2 is a block diagram of a crawling module constituting an apparatus for crawling product data using an emulator according to an embodiment of the present invention. 1 and 2 , the
실시예에서, 크롤링 모듈(110)은 쇼핑몰 사이트 별로 문서 객체 모델의 패턴과, 쇼핑몰 사이트에서 사용자 디바이스(20)에 제공할 크롤링 대상 블록을 분석하여 기본 목록 구성 정보를 크롤링할 수 있다. 일 예로, 크롤링 모듈(110)은 하나 또는 여러 개의 가상 머신으로 구성될 수 있다.In an embodiment, the
크롤링 대상 분석기(112)는 다양한 쇼핑몰 사이트(12, 14, 16) 별로 기본 목록 구성 정보의 배열 패턴을 분석하고, 배열 패턴을 기반으로 크롤링 대상 블록 및 크롤링 대상 블록의 속성 및 필드를 지정하도록 구성될 수 있다.The crawling
크롤링 모듈(110)은 다양한 쇼핑몰 사이트(12, 14, 16) 별로 문서 객체 모델의 패턴을 인식하여, 쇼핑몰 사이트(12, 14, 16) 별로 인식한 문서 객체 모델 패턴을 기반으로 쇼핑몰 사이트(12, 14, 16)의 웹 페이지에서 필요로 하는 정보를 추출할 수 있다.The
쇼핑몰 사이트의 문서 객체 모델은 프로그램이나 스크립트가 웹 페이지 내의 구성 요소들에 접근하여 내용이나 스타일 등을 변경할 수 있게 해주는 인터페이스일 수 있다. 브라우저에서 HTML, XML 등의 웹 페이지가 로딩되면 문서 객체 모델은 브라우저 내에 트리(tree) 형태로 문서 내 요소들을 구성하게 된다.The document object model of the shopping mall site may be an interface that allows a program or script to access components in a web page to change content or style. When a web page such as HTML or XML is loaded in the browser, the document object model composes the elements in the document in the form of a tree in the browser.
크롤러(114)는 다양한 대상 쇼핑몰 사이트(12, 14, 16)로부터 크롤링 대상 블록 및 크롤링 대상 블록의 속성 및 필드를 기반으로 기본 목록 구성 정보를 크롤링하도록 구성될 수 있다.The
크롤러(114)는 설정된 주기마다 각 웹 사이트에 접근하여 크롤링을 수행할 수 있다. 크롤러(114)에 의해 크롤링된 데이터는 데이터베이스(140)에 저장될 수 있다.The
상품의 기본 목록 구성 정보는 크롤러 모듈(110) 외에, 관리자 단말기(도시 생략)에 의해 수집될 수도 있다. 관리자 단말기는 다수개의 쇼핑몰 사이트(12, 14, 16) 별로 마이닝 블록, 속성 및 필드 등을 지정하고, URL 리스트 관리, 에러 로그 관리, 인증 관리 등을 수행할 수 있다.The basic list configuration information of the product may be collected by an administrator terminal (not shown) in addition to the
이때, 관리자는 관리자 단말기를 이용하여 쇼핑몰 사이트(12, 14, 16)에서 수집한 웹 페이지들의 구조를 기반으로, 마이닝 블록 지정, 속성(attribute) 지정, 필드(field) 지정, URL 리스트 관리, 에러 로그 관리, 인증 관리 등을 수행할 수 있다.At this time, the administrator uses the manager terminal to designate mining blocks, designate attributes, designate fields, manage URL list, manage errors, based on the structure of web pages collected from the
관리자는 관리자 단말기를 이용하여 쇼핑몰 웹 사이트 리스트, 마이닝 영역, 수집 주기, 에러 로그(Error Log) 등을 그래픽 유저 인터페이스(GUI; Graphic User Interface) 형태로 관리할 수 있다. 이러한 관리자 단말기의 기능은 크롤링을 수행하는 서버에 통합될 수도 있다.An administrator may manage a shopping mall website list, a mining area, a collection cycle, an error log, and the like in the form of a graphic user interface (GUI) by using the manager terminal. The function of the manager terminal may be integrated into a server that performs crawling.
도 3은 본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 장치를 구성하는 크롤링 대상 분석기의 구성도이다. 도 1 내지 도 3을 참조하면, 크롤링 대상 분석기(112)는 쇼핑몰 사이트에서 웹 크롤링을 위한 크롤링 대상을 분석할 수 있다.3 is a block diagram of a crawling target analyzer constituting an apparatus for crawling product data using an emulator according to an embodiment of the present invention. 1 to 3 , the crawling
크롤링 대상 분석기(112)는 마이닝 블록 지정부(1122), 속성 지정부(1124), 필드 지정부(1126), URL 리스트 관리부(1128), 에러 로그 관리부(1130), 인증 관리부(1132), 패턴 인식기(1134), 스크랩부(1136), 스케쥴러(1138), 에러 핸들러(1140), API 연동 모듈(1142) 및 데이터 저장부(1144)를 포함할 수 있다.The crawling
마이닝 블록 지정부(1122)는 쇼핑몰 사이트(12, 14, 16)로부터 수집된 데이터에 대해 마이닝 블록(Mining Block)을 지정하기 위한 마이닝 블록 지정 UI(User Interface)를 포함할 수 있다.The mining
마이닝 블록 지정부(1122)는 쇼핑몰 사이트(12, 14, 16)의 웹 페이지 내에서 상품의 상품명과 썸네일 및 가격 등의 정보를 나타내는 다양한 블록들의 위치, 크기 등을 설정 또는 지정할 수 있다.The mining
속성 지정부(1124)는 쇼핑몰 사이트(12, 14, 16)로부터 수집된 데이터에 대해 속성(Attribution)을 지정하기 위한 속성 지정 UI를 포함할 수 있다. 속성 지정부(1124)는 마이닝 블록 지정부(1122)에 의해 지정된 마이닝 블록들의 속성을 설정 또는 지정할 수 있다.The
속성 지정부(1124)는 예를 들어, 쇼핑몰 사이트(12, 14, 16)의 웹 사이트 별로 상품의 상품명과 썸네일 및 가격 등의 기본 목록 구성 정보에 관한 속성을 설정 또는 지정할 수 있다.The
필드 지정부(1126)는 웹 사이트로부터 수집된 데이터에 대해 필드(Field)를 지정하기 위한 필드 지정 UI를 포함할 수 있다. 필드 지정부(1126)는 속성 지정부(1124)에 의해 속성이 지정된 마이닝 블록들의 필드를 지정할 수 있다.The
필드 지정부(1126)는 예를 들어, 쇼핑몰 웹 사이트 별로 상품의 기본 목록 구성 정보에 해당하는 상품명과 썸네일 및 가격 등에 대해 각각의 필드를 설정 또는 지정할 수 있다.The
URL 리스트 관리부(1128)는 쇼핑몰 웹 사이트 별로 웹 페이지들의 URL(Uniform Resource Locator) 리스트를 관리할 수 있다. 에러 로그 관리부(1130)는 웹 사이트에서 데이터 크롤링 수집시의 오류 정보를 나타내는 에러 로그(Error Log)를 관리할 수 있다.The
인증 관리부(1132)는 웹 사이트 접속 및 데이터 지정/관리를 위한 인증(Authentication) 정보를 관리할 수 있다. 인증 관리부(1132)에서 관리하는 인증 정보는 관리자 단말기의 인증 정보, 크롤링을 수행하는 서버의 인증 정보 등을 포함할 수 있다.The
패턴 인식기(1134)는 각 웹 사이트 별로 문서 객체 모델의 패턴을 인식할 수 있다. 패턴 인식기(1134)는 웹 사이트 별로 지정된 마이닝 블록, 속성 및 필드를 기반으로 문서 객체 모델의 패턴을 인식할 수 있다.The
스크랩부(1136)는 웹 사이트 별로 파악된 문서 객체 모델의 패턴을 기반으로 필요로 하는 정보를 추출할 수 있다. 스크랩부(1136)는 문서 객체 모델의 패턴을 기반으로 웹 사이트의 웹 페이지를 스크래핑하는 스크래핑(scrapping) 모듈과, 웹페이지의 데이터를 파싱(parsing)하는 파서 모듈을 포함할 수 있다.The
스케쥴러(1138)는 웹 사이트의 데이터를 크롤링하기 위한 쓰레드(Thread) 관리 기능을 수행할 수 있다. 에러 핸들러(1140)는 웹 사이트의 데이터를 크롤링하는 과정에서 오류를 관리하는 에러 핸들링 기능을 수행할 수 있다.The
API 연동 모듈(1142)은 웹 사이트의 데이터를 크롤링하기 위한 외부 API 연동 기능을 수행할 수 있다. 서버는 웹 사이트에서 응용 프로그램 인터페이스(API) 제공시 API 연동 모듈(1142)에 의해 API를 통한 데이터 조회를 수행할 수 있다.The
데이터 저장부(1144)는 크롤링 모듈(110)에 의해 크롤링된 데이터(상품 기본 목록 구성 정보), 에뮬레이터 모듈(120)에 의해 수집된 데이터(상품 상세 정보)를 데이터베이스(140)에 저장할 수 있다.The
다시 도 1을 참조하면, 데이터베이스(140)는 다양한 쇼핑몰 사이트(12, 14, 16)로부터 다양한 상품에 대해 각각 기본 목록 구성 정보를 크롤링하여 수집된 다양한 상품에 관한 상품 데이터를 저장하도록 구성될 수 있다.Referring back to FIG. 1 , the
사용자 대상 사이트 생성 모듈(130)은 데이터베이스(140)에 저장된 상품 데이터로부터 다양한 쇼핑몰 사이트(12, 14, 16)가 통합된 사용자 대상 사이트를 생성하고, 사용자 디바이스(20)로부터 사용자 대상 사이트에서 적어도 하나의 사용자 대상 상품에 대한 상세 정보 요청을 입력받도록 구성될 수 있다.The user target
사용자 대상 사이트 생성 모듈(130)은 다양한 대상 쇼핑몰 사이트(12, 14, 16)로부터 수집되는 다양한 상품에 대한 상품 데이터를 지정된 객체 패턴으로 통합하여 사용자 대상 사이트에 표시하도록 구성될 수 있다.The user target
사용자 대상 사이트 생성 모듈(130)은 다양한 쇼핑몰 사이트(12, 14, 16)로부터 수집한 데이터를 통합하여 사용자 디바이스(20)에 일괄하여 제공하는 서비스를 제공할 수 있다. 이에 따라 사용자는 다양한 쇼핑몰 웹 사이트의 정보를 보다 빠르고 효율적으로 파악하여 상호 간에 비교, 분석을 수행할 수 있다.The user target
실시예에서, 사용자 대상 사이트 생성 모듈(130)은 다양한 웹 사이트의 관련된 필드들(동일하거나 유사한 필드들)을 하나의 필드명으로 통일하여 정보를 제공할 수 있다. 이때, 관련된 필드들은 다양한 웹 사이트의 필드들 간의 단어 유사도, 유의어 사전 등을 기반으로 분류될 수 있다.In an embodiment, the user target
본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 장치는 다양한 웹 사이트의 데이터를 한번에 사용자에게 반환할 수 있다. 이에 따라 사용자들은 여러 사이트를 이동하지 않고 한번에 간편하게 데이터를 조회하여 다양한 웹 사이트의 데이터를 비교할 수 있으며, 원하는 데이터를 빠르고 편리하게 찾을 수 있다.The device for crawling product data using an emulator according to an embodiment of the present invention may return data of various web sites to the user at once. Accordingly, users can easily search data at once without moving to multiple sites, compare data from various websites, and find desired data quickly and conveniently.
또한, 사용자들이 크롤링 서버에 자체적으로 데이터를 업로드할 수 있도록 구성되는 경우, 웹 사이트의 데이터 뿐 아니라 크롤링 서버에 자체적으로 업로드되는 데이터까지 한번에 보여줄 수도 있다.In addition, if it is configured so that users can upload their own data to the crawling server, it is possible to show not only the data of the website but also the data that is uploaded to the crawling server at once.
에뮬레이터 모듈(120)은 사용자 대상 사이트에 생성된 사용자 대상 상품에 대해 사용자 디바이스(20)로부터 상기 상세 정보 요청이 입력되면, 사용자 디바이스(20)를 통해 사용자 대상 상품에 대응되는 대상 쇼핑몰 사이트에서 사용자 대상 상품의 상세 정보를 수집하여 데이터베이스(140)에 저장시키도록 구성될 수 있다.When the detailed information request is input from the
실시예에서, 에뮬레이터 모듈(120)은 사용자 디바이스(20)로 하여금 사용자 대상 상품에 해당하는 상품 데이터를 수집한 대상 쇼핑몰 사이트에 상세 정보를 조회하여 열람하게 할 수 있다.In an embodiment, the
에뮬레이터 모듈(120)은 사용자 디바이스(20)에 응용 프로그램(application program)을 실행시켜 대상 쇼핑몰 사이트에 상품 상세 정보를 호출, 조회하게 하고, 사용자 디바이스(20)가 대상 쇼핑몰 사이트로부터 전달받은 상품 상세 정보를 수집하는 방법으로 대상 쇼핑몰 사이트의 상품 상세 정보를 크롤링할 수 있다.The
또한, 에뮬레이터 모듈(120)은 사용자 디바이스(20)에서 대상 쇼핑몰 사이트를 열람한 사용자 대상 상품의 상세 정보를 사용자 디바이스(20)로부터 전달받을 수 있다.In addition, the
에뮬레이터 모듈(120)은 사용자 디바이스(20)로부터 전달받은 상품의 상세 정보를 사용자 대상 상품에 관한 상품 데이터에 포함시켜 데이터베이스(140)에 저장시키도록 구성될 수 있다.The
에뮬레이터 모듈(120)은 사용자 디바이스로부터 사용자 대상 상품에 대해 상세 정보 요청이 입력되면, 사용자 대상 상품의 상세 정보가 데이터베이스(140)에 저장되어 있는지 판단할 수 있다.When a detailed information request for a user target product is input from the user device, the
사용자 대상 상품의 상세 정보가 데이터베이스(140)에 저장되어 있는 경우, 에뮬레이터 모듈(120)은 데이터베이스(140)에 저장된 상세 정보를 사용자 대상 사이트를 통해 사용자 디바이스(20)로 제공할 수 있다.When the detailed information of the user target product is stored in the
사용자 대상 상품의 상세 정보가 데이터베이스(140)에 저장되어 있지 않은 경우, 에뮬레이터 모듈(120)은 사용자 디바이스(20)에서 응용 프로그램 어플리케이션을 실행하여 대상 쇼핑몰 사이트에 접근하게 할 수 있다.When the detailed information of the user target product is not stored in the
그리고 나서, 에뮬레이터 모듈(120)은 사용자 디바이스(20)에서 실행되는 응용 프로그램 어플리케이션에 의해 대상 쇼핑몰 사이트로부터 상세 정보를 수집하여 데이터베이스(140)에 저장하도록 구성될 수 있다.Then, the
에뮬레이터 모듈(120)은 다수의 가상머신을 통한 병렬 처리를 통해 상품 상세 정보를 수집할 수 있으며 크롤링 처리 속도를 높일 수 있다. 또한, 사용자 디바이스와 유사한 환경인 가벼운 모바일 OS를 가상환경으로 병렬 구동시켜 빠른 속도를 확보할 수 있으며 비용 절감이 가능하다.The
또한, 에뮬레이터 모듈(120)은 병렬 처리로 분산 호출(call)이 이루어지므로 크롤링 속도 측면에서 우수하고, API를 호출하는 형태를 유지하여 크롤링 대상 서비스 시스템 측에 일반 유저가 상세 페이지를 조회하는 것과 큰 차이 없는 수준으로 부하를 경감시킬 수 있다.In addition, the
실시예에서, 에뮬레이터 모듈(120)은 대상 쇼핑몰 사이트(12, 14, 16)에 포함된 상품들 중, 상세 정보 요청이 입력된 사용자 대상 상품의 선호도 순위(우선 순위)를 판단하고, 사용자 대상 상품의 선호도 순위가 기 설정된 순위 조건을 만족하는지 판단할 수 있다.In an embodiment, the
사용자 대상 상품의 선호도 순위가 기 설정된 순위 조건을 만족하는 것으로 판단되면, 에뮬레이터 모듈(120)은 사용자 디바이스(20)를 통해 대상 쇼핑몰 사이트(12, 14, 16)에서 사용자 대상 상품의 상세 정보를 수집할 수 있다.When it is determined that the preference ranking of the user target product satisfies the preset ranking condition, the
사용자 대상 상품의 선호도 순위가 상기 기 설정된 순위 조건을 만족하지 않으면, 에뮬레이터 모듈(120)은 사용자 디바이스(20)를 통해 사용자 대상 상품의 상세 정보를 수집하지 않도록 구성될 수 있다.If the preference ranking of the user target product does not satisfy the preset ranking condition, the
사용자 대상 상품의 선호도 순위는 예를 들어, 각 쇼핑몰 사이트의 상품 인기 순위, 상품 노출 순서, 크롤링 서버에서 산출하거나 예측한 상품 인기 순위 등을 기반으로 산출될 수 있으나, 이에 한정되는 것은 아니다.The preference ranking of the user target product may be calculated based on, for example, the product popularity ranking of each shopping mall site, the product exposure order, the product popularity ranking calculated or predicted by the crawling server, and the like, but is not limited thereto.
일반적으로 웹 사이트에 불특정 상대가 웹 페이지를 스크랩하지 못하게 막는 기능이 구비되어 있는 경우, 관리자 단말기 또는 서버가 웹 사이트에서 데이터를 수집하기 위해 웹 사이트에 반복적으로 접근 시도시 웹 사이트로의 접근이 쉽게 차단되어 웹 사이트의 데이터를 크롤링하지 못하게 될 수 있다.In general, if the website is equipped with a function to prevent unspecified parties from scraping the web page, when the administrator terminal or server repeatedly tries to access the website to collect data from the website, it is easy to access the website It can be blocked and prevent crawling of data on websites.
그러나, 본 발명의 실시예에 의하면, 서버가 사용자 디바이스로 하여금 웹 사이트에서 데이터를 호출하게 하여, 웹 사이트의 데이터를 간접적으로 수집하여 크롤링하도록 구성되므로, 웹 사이트에 의해 서버의 크롤링이 제한되는 것을 방지할 수 있다.However, according to an embodiment of the present invention, since the server is configured to crawl by indirectly collecting and crawling the data of the website by causing the user device to call data from the website, the crawling of the server is limited by the website. can be prevented
즉, 본 발명의 실시예는 크롤링 대상에 대한 정보를 수집할 때, 사용자가 조회할 지 여부를 알 수 없는 상세 정보 대신 기본 목록 구성에 필요한 정보만 크롤링하여 신규 목록을 유지하면서, 많이 조회되는 상품의 특성을 분석하여 우선 순위가 높다고 판단되는 상품 정보를 중심으로 상세 정보를 수집한다.That is, the embodiment of the present invention crawls only the information necessary for the basic list configuration instead of the detailed information that the user does not know whether to inquire when collecting information about the crawling target, and maintains a new list, while maintaining a new list. By analyzing the characteristics of the product, detailed information is collected focusing on product information that is judged to have high priority.
따라서, 본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 장치에 의하면, 사용자 상품 접근 데이터를 활용하여 상품 선호도(우선 순위) 기반으로 효율적으로 상품 상세 정보를 수집함으로써 일부 데이터 수집으로 전체 데이터 수집에 가까운 효과를 발휘할 수 있다.Therefore, according to the product data crawling device using the emulator according to the embodiment of the present invention, by efficiently collecting detailed product information based on product preference (priority) using user product access data, the entire data is collected by collecting some data. can have an effect close to
또한, 본 발명의 실시예에 의하면, 다양한 상품들의 기본 목록 구성을 유지하여 사용자의 선택의 폭을 넓히면서도, 서버의 크롤링 부담을 줄일 수 있고, 서버의 잦은 접근에 따라 쇼핑몰 사이트로부터 웹 페이지 접근이 차단되는 것을 방지할 수 있다.In addition, according to the embodiment of the present invention, it is possible to reduce the crawling burden of the server while maintaining the basic list configuration of various products, while widening the user's choice, and accessing the web page from the shopping mall site according to the frequent access of the server is possible. blockage can be prevented.
따라서, 본 발명의 실시예에 의하면, 사용자가 상품의 상세 정보에 접근했을 때 사용자 디바이스를 통해 타겟 서비스 사이트의 추가 정보를 수집하여 크롤링 주체 시스템에 전달하고 상품 접근시 활용함으로써, 사용자 디바이스 자원을 사용하여 중앙 시스템의 부하를 감소하고, 타겟 서비스 시스템 부하 또한 줄일 수 있다.Therefore, according to an embodiment of the present invention, when a user accesses detailed information of a product, additional information of a target service site is collected through a user device, delivered to a crawling subject system, and utilized when accessing a product, thereby using user device resources Thus, the load on the central system can be reduced, and the load on the target service system can also be reduced.
또한, 본 발명의 실시예에 의하면, 사용자 디바이스(20)의 요청에 따라 상품 상세 정보를 수집하므로, 이 과정에서 사용자 디바이스(20)의 상품 상세 정보 요청 히스토리를 수집할 수 있다.In addition, according to the embodiment of the present invention, since detailed product information is collected according to the request of the
따라서, 이러한 사용자 디바이스(20)의 상품 상세 정보 요청 히스토리를 기반으로 사용자의 상품 선택 성향 데이터를 분석하여 사용자 대상 사이트로 피드백함으로써 사용자에 적합한 상품 정보를 우선적으로 추천하는 것도 가능하다.Accordingly, it is also possible to preferentially recommend product information suitable for the user by analyzing the product selection propensity data of the user based on the product detailed information request history of the
도 4는 본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 방법의 순서도이다. 이하에서 도 1 및 도 4를 참조하여 본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 방법에 대해 설명하다.4 is a flowchart of a product data crawling method using an emulator according to an embodiment of the present invention. Hereinafter, a product data crawling method using an emulator according to an embodiment of the present invention will be described with reference to FIGS. 1 and 4 .
본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 방법은 크롤링 대상 쇼핑몰(10)의 상품의 기본 목록 구성 정보를 사용자 대상 사이트에 통합하여 제공하고, 상품들 중 사용자에 의해 요청된 상품이 상세 정보를 사용자 디바이스(20)를 통해 수집하기 위한 것이다.The product data crawling method using the emulator according to an embodiment of the present invention provides the basic list configuration information of products of the crawling
본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 방법은 사용자 대상 사이트를 통해 다수의 사용자에게 상품 데이터를 제공하고, 다수의 사용자 디바이스(20)를 통해 상품의 상세 정보를 수집할 수 있다.The product data crawling method using the emulator according to an embodiment of the present invention may provide product data to a plurality of users through a user target site, and collect detailed product information through a plurality of
크롤링 모듈(110)은 크롤링 대상 쇼핑몰(10)에 해당하는 다양한 쇼핑몰 사이트(12, 14, 16)에서 상품의 상품명과 썸네일 및 가격을 포함하는 기본 목록 구성 정보와, 상품의 상세 정보(예를 들어, 사용자 대상 상품의 상품 상세 이미지, 크기, 중량, 재질, 색상 및 부가 설명 등) 중 기본 목록 구성 정보만 크롤링할 수 있다(S110).The
이때, 크롤링 모듈(110)은 쇼핑몰 사이트 별로 문서 객체 모델의 패턴과, 쇼핑몰 사이트에서 사용자 디바이스(20)에 제공할 크롤링 대상 블록을 분석하여 기본 목록 구성 정보를 크롤링할 수 있다.In this case, the
도 5는 도 4의 단계 S110을 나타낸 순서도이다. 도 1, 도 4 및 도 5를 참조하면, 크롤링 모듈(110)은 다양한 쇼핑몰 사이트(12, 14, 16) 별로 기본 목록 구성 정보의 배열 패턴을 분석하고(S112), 배열 패턴을 기반으로 크롤링 대상 블록 및 크롤링 대상 블록의 속성 및 필드를 지정할 수 있다(S114).5 is a flowchart illustrating step S110 of FIG. 4 . 1, 4, and 5, the
크롤링 모듈(110)은 다양한 쇼핑몰 사이트(12, 14, 16) 별로 문서 객체 모델의 패턴을 인식하여, 쇼핑몰 사이트(12, 14, 16) 별로 인식한 문서 객체 모델 패턴을 기반으로 쇼핑몰 사이트(12, 14, 16)의 웹 페이지에서 필요로 하는 정보를 추출할 수 있다. 크롤링 모듈(110)은 크롤링 대상 블록 및 크롤링 대상 블록의 속성 및 필드를 기반으로 기본 목록 구성 정보를 크롤링할 수 있다(S116).The
다시 도 1 및 도 4를 참조하면, 다양한 쇼핑몰 사이트(12, 14, 16)로부터 다양한 상품에 대해 각각 기본 목록 구성 정보를 크롤링하여 수집된 다양한 상품에 관한 상품 데이터는 데이터베이스(140)에 저장될 수 있다(S120).Referring back to FIGS. 1 and 4 , product data related to various products collected by crawling basic list configuration information for various products from various
사용자 대상 사이트 생성 모듈(130)은 데이터베이스(140)에 저장된 상품 데이터로부터 다양한 쇼핑몰 사이트(12, 14, 16)가 통합된 사용자 대상 사이트를 생성할 수 있다(S130).The user target
사용자 대상 사이트 생성 모듈(130)은 다양한 대상 쇼핑몰 사이트(12, 14, 16)로부터 수집되는 다양한 상품에 대한 상품 데이터를 지정된 객체 패턴으로 통합하여 사용자 대상 사이트에 표시하도록 구성될 수 있다.The user target
사용자 대상 사이트 생성 모듈(130)은 다양한 쇼핑몰 사이트(12, 14, 16)로부터 수집한 데이터를 통합하여 사용자 디바이스(20)에 일괄하여 제공하는 서비스를 제공할 수 있다. 이에 따라 사용자는 다양한 쇼핑몰 웹 사이트의 정보를 보다 빠르고 효율적으로 파악하여 상호 간에 비교, 분석을 수행할 수 있다.The user target
실시예에서, 사용자 대상 사이트 생성 모듈(130)은 다양한 웹 사이트의 관련된 필드들(동일하거나 유사한 필드들)을 하나의 필드명으로 통일하여 정보를 제공할 수 있다. 이때, 관련된 필드들은 다양한 웹 사이트의 필드들 간의 단어 유사도, 유의어 사전 등을 기반으로 분류될 수 있다.In an embodiment, the user target
본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 장치는 다양한 웹 사이트의 데이터를 한번에 사용자에게 반환할 수 있으며, 사용자들은 여러 사이트들을 이동하지 않고 한번에 데이터를 간편하게 조회하여 여러 웹사이트의 데이터를 비교할 수 있으며, 원하는 데이터를 빠르고 편리하게 찾을 수 있다.The device for crawling product data using an emulator according to an embodiment of the present invention can return data of various websites to a user at once, and users can easily search data at once without moving multiple sites to view data from multiple websites. You can compare and find the data you want quickly and conveniently.
또한, 사용자들이 서버에 자체적으로 데이터를 업로드할 수 있도록 구성되는 경우, 웹 사이트의 데이터 뿐 아니라 서버에 자체적으로 업로드되는 데이터까지 한번에 보여줄 수도 있다.In addition, if it is configured so that users can upload their own data to the server, it is possible to show not only the data of the website but also the data that is uploaded to the server at once.
사용자 디바이스(20)로부터 사용자 대상 사이트에서 적어도 하나의 사용자 대상 상품에 대한 상세 정보 요청이 입력되면(S140), 에뮬레이터 모듈(120)은 사용자 디바이스(20)를 통해 대상 쇼핑몰 사이트에서 사용자 대상 상품의 상세 정보를 수집하여 데이터베이스(140)에 저장할 수 있다(S150).When a request for detailed information on at least one user target product is input from the
도 6은 도 4의 단계 S150을 나타낸 순서도이다. 도 1, 도 4 및 도 6을 참조하면, 에뮬레이터 모듈(120)은 사용자 디바이스(20)로 하여금 사용자 대상 상품에 해당하는 상품 데이터를 수집한 대상 쇼핑몰 사이트에 상세 정보를 열람하게 할 수 있다(S152).6 is a flowchart illustrating step S150 of FIG. 4 . 1, 4, and 6 , the
에뮬레이터 모듈(120)은 사용자 디바이스(20)에 응용 프로그램(application program)을 실행시켜 대상 쇼핑몰 사이트에 상품 상세 정보를 호출, 조회하게 하고, 사용자 디바이스(20)가 대상 쇼핑몰 사이트로부터 전달받은 상품 상세 정보를 수집하는 방법으로 대상 쇼핑몰 사이트의 상품 상세 정보를 크롤링할 수 있다.The
또한, 에뮬레이터 모듈(120)은 사용자 디바이스(20)에서 대상 쇼핑몰 사이트를 열람한 사용자 대상 상품의 상세 정보를 사용자 디바이스(20)로부터 전달받을 수 있다(S154).In addition, the
에뮬레이터 모듈(120)은 사용자 디바이스(20)로부터 전달받은 상품의 상세 정보를 사용자 대상 상품에 관한 상품 데이터에 포함시켜 데이터베이스(140)에 저장할 수 있다(S156).The
도 7은 도 4의 단계 S150의 다른 예를 나타낸 순서도이다. 도 1, 도 4 및 도 7을 참조하면, 에뮬레이터 모듈(120)은 사용자 디바이스로부터 사용자 대상 상품에 대해 상세 정보 요청이 입력되면, 사용자 대상 상품의 상세 정보가 데이터베이스(140)에 저장되어 있는지 판단할 수 있다(S162). 이때 서버는 URL 정보를 통해 사용자 디바이스가 요청한 정보가 서버에 저장되어 있는지 여부를 판단할 수 있다.7 is a flowchart illustrating another example of step S150 of FIG. 4 . 1, 4 and 7, the
사용자 대상 상품의 상세 정보가 데이터베이스(140)에 저장되어 있는 경우, 에뮬레이터 모듈(120)은 데이터베이스(140)에 저장된 상세 정보를 사용자 대상 사이트를 통해 사용자 디바이스(20)로 제공할 수 있다(S164, S166).When the detailed information of the user target product is stored in the
사용자 대상 상품의 상세 정보가 데이터베이스(140)에 저장되어 있지 않은 경우, 에뮬레이터 모듈(120)은 사용자 디바이스(20)에서 응용 프로그램 어플리케이션을 실행하여 대상 쇼핑몰 사이트에 접근하게 할 수 있다(S164, S168).When the detailed information of the user target product is not stored in the
그리고 나서, 에뮬레이터 모듈(120)은 사용자 디바이스(20)에서 실행되는 응용 프로그램 어플리케이션에 의해 대상 쇼핑몰 사이트로부터 상세 정보를 수집하여 데이터베이스(140)에 저장할 수 있다(S170).Then, the
도 8은 도 4의 단계 S150의 또 다른 예를 나타낸 순서도이다. 도 1, 도 4 및 도 8을 참조하면, 에뮬레이터 모듈(120)은 대상 쇼핑몰 사이트(12, 14, 16)에 포함된 상품들 중, 상세 정보 요청이 입력된 사용자 대상 상품의 선호도 순위(우선 순위)를 판단하고(S172), 사용자 대상 상품의 선호도 순위가 기 설정된 순위 조건을 만족하는지 판단할 수 있다(S174).8 is a flowchart illustrating another example of step S150 of FIG. 4 . 1, 4, and 8 , the
사용자 대상 상품의 선호도 순위가 기 설정된 순위 조건을 만족하는 것으로 판단되면, 에뮬레이터 모듈(120)은 사용자 디바이스(20)를 통해 대상 쇼핑몰 사이트(12, 14, 16)에서 사용자 대상 상품의 상세 정보를 수집할 수 있다(S174, S176).When it is determined that the preference ranking of the user target product satisfies the preset ranking condition, the
사용자 대상 상품의 선호도 순위가 상기 기 설정된 순위 조건을 만족하지 않으면, 에뮬레이터 모듈(120)은 사용자 디바이스(20)를 통해 사용자 대상 상품의 상세 정보를 수집하지 않도록 구성될 수 있다(S174, S178).If the preference ranking of the user target product does not satisfy the preset ranking condition, the
본 발명의 실시예에 의하면, 서버가 사용자 디바이스로 하여금 웹 사이트에서 데이터를 호출하게 하여, 웹 사이트의 데이터를 간접적으로 수집하여 크롤링하도록 구성되므로, 웹 사이트에 의해 서버의 크롤링이 제한되는 것을 방지할 수 있다.According to an embodiment of the present invention, since the server is configured to indirectly collect and crawl data of the website by causing the user device to call data from the website, it is possible to prevent the crawling of the server from being restricted by the website. can
본 발명의 실시예에 따른 상품 데이터 크롤링 방법은 크롤링 대상에 대한 정보를 수집할 때, 사용자가 조회할 지 여부를 알 수 없는 상세 정보 대신 기본 목록 구성에 필요한 정보만 크롤링하여 신규 목록을 유지하면서, 많이 조회되는 상품의 특성을 분석하여 우선 순위가 높다고 판단되는 상품 정보를 중심으로 상세 정보를 수집한다.The product data crawling method according to an embodiment of the present invention, when collecting information on a crawling target, crawls only the information necessary for the basic list configuration instead of the detailed information that the user does not know whether to inquire while maintaining a new list, By analyzing the characteristics of products that are frequently inquired, detailed information is collected focusing on product information that is judged to have high priority.
따라서, 본 발명의 실시예에 따른 에뮬레이터를 활용한 상품 데이터 크롤링 방법에 의하면, 사용자 상품 접근 데이터를 활용하여 상품 선호도(우선 순위) 기반으로 효율적으로 상품 상세 정보를 수집함으로써 일부 데이터 수집으로 전체 데이터 수집에 가까운 효과를 발휘할 수 있다.Therefore, according to the product data crawling method using the emulator according to the embodiment of the present invention, by efficiently collecting detailed product information based on product preference (priority) using user product access data, the entire data is collected by collecting some data. can have an effect close to
또한, 본 발명의 실시예에 의하면, 다양한 상품들의 기본 목록 구성을 유지하여 사용자의 선택의 폭을 넓히면서도, 서버의 크롤링 부담을 줄일 수 있고, 서버의 잦은 접근에 따라 쇼핑몰 사이트로부터 웹 페이지 접근이 차단되는 것을 방지할 수 있다.In addition, according to the embodiment of the present invention, it is possible to reduce the crawling burden of the server while maintaining the basic list configuration of various products, while widening the user's choice, and accessing the web page from the shopping mall site according to the frequent access of the server is possible. blockage can be prevented.
따라서, 본 발명의 실시예에 의하면, 사용자가 상품의 상세 정보에 접근했을 때 사용자 디바이스를 통해 타겟 서비스 사이트의 추가 정보를 수집하여 크롤링 주체 시스템에 전달하고 상품 접근시 활용함으로써, 사용자 디바이스 자원을 사용하여 중앙 시스템의 부하를 감소하고, 타겟 서비스 시스템 부하 또한 줄일 수 있다.Therefore, according to an embodiment of the present invention, when a user accesses detailed information of a product, additional information of a target service site is collected through a user device, delivered to a crawling subject system, and utilized when accessing a product, thereby using user device resources Thus, the load on the central system can be reduced, and the load on the target service system can also be reduced.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/ 또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(Arithmetic Logic Unit), 디지털 신호 프로세서(Digital Signal Processor), 마이크로컴퓨터, FPGA(Field Programmable Gate Array), PLU(Programmable Logic Unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다.The embodiments described above may be implemented by a hardware component, a software component, and/or a combination of a hardware component and a software component. For example, the apparatus, methods and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate (FPGA). Array), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions, may be implemented using one or more general purpose or special purpose computers.
처리 장치는 운영 체제 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술 분야에서 통상의 지식을 가진 자는 처리 장치가 복수 개의 처리 요소(Processing Element) 및/또는 복수 유형의 처리요소를 포함할 수 있음을 이해할 것이다.The processing device may run an operating system and one or more software applications running on the operating system. A processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For convenience of understanding, a processing device is sometimes described as being used, but a person of ordinary skill in the art will recognize that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It will be understood that this may include
예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(Parallel Processor) 와 같은, 다른 처리 구성(Processing configuration)도 가능하다. 소프트웨어는 컴퓨터 프로그램(Computer Program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다.For example, the processing device may include a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a Parallel Processor. The software may include a computer program, code, instructions, or a combination of one or more thereof, which configures a processing device to operate as desired or is independently or collectively processed You can command the device.
소프트웨어 및/ 또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody) 될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software and/or data may be any kind of machine, component, physical device, virtual equipment, computer storage medium or device, to be interpreted by or provide instructions or data to the processing device. , or may be permanently or temporarily embody in a transmitted signal wave. The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored in one or more computer-readable recording media.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and available to those skilled in the art of computer software.
컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CDROM, DVD와 같은 광기록 매체(optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CDROMs and DVDs, and ROM, RAM, and flash memory. Hardware devices specially configured to store and execute program instructions, such as, etc. are included. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로, 다른 구현들, 다른 실시예들 및 청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.As described above, although the embodiments have been described with reference to the limited embodiments and drawings, various modifications and variations are possible from the above description by those skilled in the art. For example, the described techniques are performed in an order different from the described method, and/or the described components of the system, structure, apparatus, circuit, etc. are combined or combined in a different form than the described method, or other components Or substituted or substituted by equivalents may achieve an appropriate result. Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.
10: 크롤링 대상 쇼핑몰
12, 14, 16: 쇼핑몰 사이트
20: 사용자 디바이스
100: 에뮬레이터를 활용한 상품 데이터 크롤링 장치
110: 크롤링 모듈
112: 크롤링 대상 분석기
114: 크롤러
120: 에뮬레이터 모듈
130: 사용자 대상 사이트 생성 모듈
140: 데이터베이스10: Crawl target shopping mall
12, 14, 16: shopping mall site
20: user device
100: Product data crawling device using emulator
110: crawling module
112: crawl target analyzer
114: crawler
120: emulator module
130: user target site creation module
140: database
Claims (15)
상기 다양한 쇼핑몰 사이트로부터 다양한 상품에 대해 각각 상기 기본 목록 구성 정보를 크롤링하여 수집된 상기 다양한 상품에 관한 상품 데이터를 저장하도록 구성되는 데이터베이스;
상기 데이터베이스에 저장된 상기 상품 데이터로부터 상기 다양한 쇼핑몰 사이트가 통합된 사용자 대상 사이트를 생성하고, 사용자 디바이스로부터 상기 사용자 대상 사이트에서 적어도 하나의 사용자 대상 상품에 대한 상세 정보 요청을 입력받도록 구성되는 사용자 대상 사이트 생성 모듈; 및
상기 사용자 대상 사이트에 생성된 사용자 대상 상품에 대해 상기 사용자 디바이스로부터 상기 상세 정보 요청이 입력되면, 상기 사용자 디바이스를 통해 상기 사용자 대상 상품에 대응되는 대상 쇼핑몰 사이트에서 상기 사용자 대상 상품의 상세 정보를 수집하여 상기 데이터베이스에 저장시키도록 구성되는 에뮬레이터 모듈;을 포함하고,
상기 에뮬레이터 모듈은,
상기 사용자 디바이스로부터 상기 상세 정보 요청이 입력되면, 상기 사용자 디바이스로 하여금 상기 사용자 대상 상품에 해당하는 상품 데이터를 수집한 상기 대상 쇼핑몰 사이트에 상기 상세 정보를 열람하게 하고;
상기 사용자 디바이스에서 상기 대상 쇼핑몰 사이트를 열람한 상기 사용자 대상 상품의 상세 정보를 상기 사용자 디바이스로부터 전달받고; 그리고
상기 사용자 디바이스로부터 전달받은 상기 상세 정보를 상기 사용자 대상 상품에 관한 상품 데이터에 포함시켜 상기 데이터베이스에 저장시키도록 구성되고,
상기 에뮬레이터 모듈은,
상기 사용자 디바이스로부터 상기 사용자 대상 상품에 대해 상기 상세 정보 요청이 입력되면, 상기 사용자 대상 상품의 상세 정보가 상기 데이터베이스에 저장되어 있는지 판단하고;
상기 사용자 대상 상품의 상세 정보가 상기 데이터베이스에 저장되어 있는 경우, 상기 데이터베이스에 저장된 상세 정보를 상기 사용자 대상 사이트를 통해 상기 사용자 디바이스로 제공하고;
상기 사용자 대상 상품의 상세 정보가 상기 데이터베이스에 저장되어 있지 않은 경우, 상기 사용자 디바이스에서 응용 프로그램 어플리케이션을 실행하여 상기 대상 쇼핑몰 사이트에 접근하게 하고; 그리고
상기 사용자 디바이스에서 실행되는 응용 프로그램 어플리케이션에 의해 상기 대상 쇼핑몰 사이트로부터 상세 정보를 수집하여 상기 데이터베이스에 저장하도록 구성되고,
상기 크롤링 모듈은,
상기 다양한 대상 쇼핑몰 사이트 별로 상기 기본 목록 구성 정보의 배열 패턴을 분석하고, 상기 배열 패턴을 기반으로 크롤링 대상 블록 및 상기 크롤링 대상 블록의 속성 및 필드를 지정하도록 구성되는 크롤링 대상 분석기; 및
상기 다양한 대상 쇼핑몰 사이트로부터 상기 크롤링 대상 블록 및 상기 크롤링 대상 블록의 속성 및 필드를 기반으로 상기 기본 목록 구성 정보를 크롤링하도록 구성되는 크롤러;를 포함하고,
상기 에뮬레이터 모듈은,
상기 대상 쇼핑몰 사이트에 포함된 상품들 중, 상기 상세 정보 요청이 입력된 상기 사용자 대상 상품의 선호도 순위를 판단하고;
상기 사용자 대상 상품의 선호도 순위가 기 설정된 순위 조건을 만족하는지 판단하고;
상기 사용자 대상 상품의 선호도 순위가 상기 기 설정된 순위 조건을 만족하면, 상기 사용자 디바이스를 통해 상기 대상 쇼핑몰 사이트에서 상기 사용자 대상 상품의 상세 정보를 수집하고; 그리고
상기 사용자 대상 상품의 선호도 순위가 상기 기 설정된 순위 조건을 만족하지 않으면, 상기 사용자 디바이스를 통해 상기 사용자 대상 상품의 상세 정보를 수집하지 않도록 구성되는, 에뮬레이터를 활용한 상품 데이터 크롤링 장치.a crawling module configured to crawl only basic list configuration information including product names, thumbnails, and prices of products in various shopping mall sites, and the basic list configuration information among detailed information of the products;
a database configured to store product data on the various products collected by crawling the basic list configuration information for various products from the various shopping mall sites, respectively;
Generating a user target site in which the various shopping mall sites are integrated from the product data stored in the database, and generating a user target site configured to receive a request for detailed information on at least one user target product from a user device at the user target site module; and
When the detailed information request is inputted from the user device for the user target product created on the user target site, detailed information of the user target product is collected from the target shopping mall site corresponding to the user target product through the user device, an emulator module configured to store in the database;
The emulator module is
when the detailed information request is input from the user device, causing the user device to view the detailed information on the target shopping mall site that has collected product data corresponding to the user target product;
receiving, from the user device, detailed information of the product for the user who viewed the target shopping mall site in the user device; And
It is configured to include the detailed information received from the user device in the product data related to the user target product and store it in the database,
The emulator module is
When the detailed information request for the user target product is input from the user device, it is determined whether the detailed information of the user target product is stored in the database;
when the detailed information of the user target product is stored in the database, providing the detailed information stored in the database to the user device through the user target site;
when the detailed information of the user target product is not stored in the database, execute an application program application on the user device to access the target shopping mall site; And
It is configured to collect detailed information from the target shopping mall site by an application program executed on the user device and store it in the database,
The crawling module is
a crawling target analyzer configured to analyze an arrangement pattern of the basic list configuration information for each of the various target shopping mall sites, and to designate a crawling target block and properties and fields of the crawling target block based on the arrangement pattern; and
a crawler configured to crawl the basic list configuration information based on the crawling target block and attributes and fields of the crawling target block from the various target shopping mall sites; and
The emulator module is
determining a preference ranking of the user target product to which the detailed information request is input, among products included in the target shopping mall site;
determining whether the preference ranking of the user target product satisfies a preset ranking condition;
collecting detailed information of the user target product from the target shopping mall site through the user device when the preference ranking of the user target product satisfies the preset ranking condition; And
Product data crawling apparatus using an emulator, configured not to collect detailed information of the user target product through the user device if the preference ranking of the user target product does not satisfy the preset ranking condition.
상기 상세 정보는, 상기 사용자 대상 상품의 상품 상세 이미지, 크기, 중량, 재질, 색상 및 부가 설명을 포함하는, 에뮬레이터를 활용한 상품 데이터 크롤링 장치.According to claim 1,
The detailed information includes a detailed product image, size, weight, material, color, and additional description of the product for the user, a product data crawling device using an emulator.
상기 사용자 대상 사이트 생성 모듈은,
상기 다양한 대상 쇼핑몰 사이트로부터 수집되는 상기 다양한 상품에 대한 상품 데이터를 지정된 객체 패턴으로 통합하여 상기 사용자 대상 사이트에 표시하도록 구성되는, 에뮬레이터를 활용한 상품 데이터 크롤링 장치.According to claim 1,
The user target site creation module,
The device for crawling product data using an emulator is configured to integrate product data for the various products collected from the various target shopping mall sites into a specified object pattern and display it on the user target site.
상기 다양한 쇼핑몰 사이트로부터 다양한 상품에 대해 각각 상기 기본 목록 구성 정보를 크롤링하여 수집된 상기 다양한 상품에 관한 상품 데이터를 데이터베이스에 저장하는 단계;
사용자 대상 사이트 생성 모듈에 의해, 상기 데이터베이스에 저장된 상기 상품 데이터로부터 상기 다양한 쇼핑몰 사이트가 통합된 사용자 대상 사이트를 생성하는 단계;
상기 사용자 대상 사이트 생성 모듈에 의해, 사용자 디바이스로부터 상기 사용자 대상 사이트에서 적어도 하나의 사용자 대상 상품에 대한 상세 정보 요청을 입력받는 단계; 및
에뮬레이터 모듈에 의해, 상기 사용자 대상 상품에 대해 상기 사용자 디바이스로부터 상기 상세 정보 요청이 입력되면 상기 사용자 디바이스를 통해 상기 사용자 대상 상품에 대응되는 대상 쇼핑몰 사이트에서 상기 사용자 대상 상품의 상세 정보를 수집하는 단계;를 포함하고,
상기 사용자 대상 상품의 상세 정보를 수집하는 단계는,
상기 사용자 디바이스로 하여금 상기 사용자 대상 상품에 해당하는 상품 데이터를 수집한 상기 대상 쇼핑몰 사이트에 상기 상세 정보를 열람하게 하는 단계;
상기 사용자 디바이스에서 상기 대상 쇼핑몰 사이트를 열람한 상기 사용자 대상 상품의 상세 정보를 상기 사용자 디바이스로부터 전달받는 단계; 및
상기 사용자 디바이스로부터 전달받은 상기 상세 정보를 상기 사용자 대상 상품에 관한 상품 데이터에 포함시켜 상기 데이터베이스에 저장시키는 단계;를 포함하고,
상기 사용자 대상 상품의 상세 정보를 수집하는 단계는,
상기 사용자 디바이스로부터 상기 사용자 대상 상품에 대해 상기 상세 정보 요청이 입력되면, 상기 사용자 대상 상품의 상세 정보가 상기 데이터베이스에 저장되어 있는지 판단하는 단계;
상기 사용자 대상 상품의 상세 정보가 상기 데이터베이스에 저장되어 있는 경우, 상기 데이터베이스에 저장된 상세 정보를 상기 사용자 대상 사이트를 통해 상기 사용자 디바이스로 제공하는 단계;
상기 사용자 대상 상품의 상세 정보가 상기 데이터베이스에 저장되어 있지 않은 경우, 상기 사용자 디바이스에서 응용 프로그램 어플리케이션을 실행하여 상기 대상 쇼핑몰 사이트에 접근하게 하는 단계; 및
상기 사용자 디바이스에서 실행되는 응용 프로그램 어플리케이션에 의해 상기 대상 쇼핑몰 사이트로부터 상세 정보를 수집하여 상기 데이터베이스에 저장하는 단계;를 더 포함하고,
상기 크롤링하는 단계는,
크롤링 대상 분석기에 의해, 상기 다양한 대상 쇼핑몰 사이트 별로 상기 기본 목록 구성 정보의 배열 패턴을 분석하고, 상기 배열 패턴을 기반으로 크롤링 대상 블록 및 상기 크롤링 대상 블록의 속성 및 필드를 지정하는 단계; 및
크롤러에 의해, 상기 다양한 대상 쇼핑몰 사이트로부터 상기 크롤링 대상 블록 및 상기 크롤링 대상 블록의 속성 및 필드를 기반으로 상기 기본 목록 구성 정보를 크롤링하는 단계;를 포함하고,
상기 사용자 대상 상품의 상세 정보를 수집하는 단계는,
상기 대상 쇼핑몰 사이트에 포함된 상품들 중, 상기 상세 정보 요청이 입력된 상기 사용자 대상 상품의 선호도 순위를 판단하는 단계;
상기 사용자 대상 상품의 선호도 순위가 기 설정된 순위 조건을 만족하는지 판단하는 단계;
상기 사용자 대상 상품의 선호도 순위가 상기 기 설정된 순위 조건을 만족하면, 상기 사용자 디바이스를 통해 상기 대상 쇼핑몰 사이트에서 상기 사용자 대상 상품의 상세 정보를 수집하는 단계; 및
상기 사용자 대상 상품의 선호도 순위가 상기 기 설정된 순위 조건을 만족하지 않으면, 상기 사용자 디바이스를 통해 상기 사용자 대상 상품의 상세 정보를 수집하지 않는 단계;를 포함하는, 에뮬레이터를 활용한 상품 데이터 크롤링 방법.crawling, by a crawling module, only basic list configuration information including product names, thumbnails, and prices of products in various shopping mall sites, and the basic list configuration information among detailed information of the products;
storing product data on the various products collected by crawling the basic list configuration information for various products from the various shopping mall sites in a database;
generating, by a user target site creation module, a user target site in which the various shopping mall sites are integrated from the product data stored in the database;
receiving, by the user target site creation module, a request for detailed information on at least one user target product at the user target site from a user device; and
collecting, by the emulator module, detailed information of the user target product from a target shopping mall site corresponding to the user target product through the user device when the detailed information request for the user target product is input from the user device; including,
The step of collecting detailed information of the product for the user includes:
allowing the user device to view the detailed information on the target shopping mall site that has collected product data corresponding to the user target product;
receiving, from the user device, detailed information of the product for the user who has read the target shopping mall site from the user device; and
Including; including the detailed information received from the user device in the product data related to the user target product and storing in the database;
The step of collecting detailed information of the product for the user includes:
When the detailed information request is input for the user target product from the user device, determining whether the detailed information of the user target product is stored in the database;
providing the detailed information stored in the database to the user device through the user target site when the detailed information of the user target product is stored in the database;
when the detailed information of the user target product is not stored in the database, executing an application program in the user device to access the target shopping mall site; and
The method further comprising: collecting detailed information from the target shopping mall site by an application program executed on the user device and storing it in the database;
The crawling step is
analyzing, by a crawling target analyzer, an arrangement pattern of the basic list configuration information for each of the various target shopping mall sites, and designating a crawling target block and properties and fields of the crawling target block based on the arrangement pattern; and
Crawling, by a crawler, the basic list configuration information from the various target shopping mall sites based on the crawling target block and attributes and fields of the crawling target block;
The step of collecting detailed information of the product for the user includes:
determining a preference ranking of the user target product to which the detailed information request is input, among products included in the target shopping mall site;
determining whether the preference ranking of the user target product satisfies a preset ranking condition;
collecting detailed information of the user target product from the target shopping mall site through the user device when the preference ranking of the user target product satisfies the preset ranking condition; and
If the preference ranking of the user target product does not satisfy the preset ranking condition, not collecting detailed information of the user target product through the user device; Containing, Product data crawling method using an emulator.
상기 상세 정보는, 상기 사용자 대상 상품의 상품 상세 이미지, 크기, 중량, 재질, 색상 및 부가 설명을 포함하는, 에뮬레이터를 활용한 상품 데이터 크롤링 방법.9. The method of claim 8,
The detailed information includes a detailed product image, size, weight, material, color, and additional description of the product for the user, a product data crawling method using an emulator.
상기 사용자 대상 사이트를 생성하는 단계는,
상기 다양한 대상 쇼핑몰 사이트로부터 수집되는 상기 다양한 상품에 대한 상품 데이터를 지정된 객체 패턴으로 통합하여 상기 사용자 대상 사이트에 표시하는 단계를 포함하는, 에뮬레이터를 활용한 상품 데이터 크롤링 방법.9. The method of claim 8,
The step of creating the user target site includes:
Product data crawling method using an emulator, comprising the step of integrating the product data for the various products collected from the various target shopping mall sites into a designated object pattern and displaying it on the user target site.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200080921A KR102399642B1 (en) | 2020-07-01 | 2020-07-01 | Apparatus and method for crawling item data using emulator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200080921A KR102399642B1 (en) | 2020-07-01 | 2020-07-01 | Apparatus and method for crawling item data using emulator |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220003294A KR20220003294A (en) | 2022-01-10 |
KR102399642B1 true KR102399642B1 (en) | 2022-05-18 |
Family
ID=79347224
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200080921A KR102399642B1 (en) | 2020-07-01 | 2020-07-01 | Apparatus and method for crawling item data using emulator |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102399642B1 (en) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101371326B1 (en) * | 2011-10-28 | 2014-03-13 | 양동훈 | System for ubiquitous smart shopping |
KR101945726B1 (en) * | 2017-03-21 | 2019-02-11 | (주)프람트테크놀로지 | Contents-converging dynamic advertising system |
KR102120465B1 (en) * | 2017-11-10 | 2020-06-08 | 신재오 | Method of providing comprehensive product information |
KR102257596B1 (en) * | 2018-10-25 | 2021-05-31 | (주)플로우 | smart product registration system and online e-commerce system using the same |
-
2020
- 2020-07-01 KR KR1020200080921A patent/KR102399642B1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
KR20220003294A (en) | 2022-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11442924B2 (en) | Selective filtered summary graph | |
US8756519B2 (en) | Techniques for sharing content on a web page | |
US10204132B2 (en) | Supplemental event attributes in a table format | |
US10579221B2 (en) | Suite-wide navigation | |
US10733358B2 (en) | Method and system for site migration | |
US20150356119A1 (en) | Searching of Images Based Upon Visual Similarity | |
US20130202216A1 (en) | Object tag metadata and image search | |
WO2014139300A1 (en) | Method and device for loading a plug-in | |
US10496696B2 (en) | Search method and apparatus | |
JP2020515944A (en) | System and method for direct in-browser markup of elements in Internet content | |
TW201723897A (en) | Method, device, and system for displaying information associated with a web page | |
US8898297B1 (en) | Device attribute-customized metadata for browser users | |
KR102407312B1 (en) | Apparatus and method for crawling data using web archive | |
JP2023107749A (en) | Browser-based robotic process automation (RPA) robot design interface | |
US8375324B1 (en) | Computer-implemented document manager application enabler system and method | |
RU2693193C1 (en) | Automated extraction of information | |
CN112817817B (en) | Buried point information query method, buried point information query device, computer equipment and storage medium | |
US10846328B2 (en) | Digital asset association with search query data | |
CN111797297B (en) | Page data processing method and device, computer equipment and storage medium | |
KR101282975B1 (en) | A webpage crop server system of reconstructing a web page from tree structure of document elements | |
KR102399642B1 (en) | Apparatus and method for crawling item data using emulator | |
KR102411402B1 (en) | Integrated image retrieval system | |
JP6505849B2 (en) | Generation of element identifier | |
US10324975B2 (en) | Bulk keyword management application | |
KR102322919B1 (en) | Intelligent crawling system and intelligent crawling method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AMND | Amendment | ||
E601 | Decision to refuse application | ||
X091 | Application refused [patent] | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant |