WO2013038519A1 - Web page analysis device and program for analyzing web page - Google Patents

Web page analysis device and program for analyzing web page Download PDF

Info

Publication number
WO2013038519A1
WO2013038519A1 PCT/JP2011/070978 JP2011070978W WO2013038519A1 WO 2013038519 A1 WO2013038519 A1 WO 2013038519A1 JP 2011070978 W JP2011070978 W JP 2011070978W WO 2013038519 A1 WO2013038519 A1 WO 2013038519A1
Authority
WO
WIPO (PCT)
Prior art keywords
keyword
web page
point
information
line
Prior art date
Application number
PCT/JP2011/070978
Other languages
French (fr)
Japanese (ja)
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 PCT/JP2011/070978 priority Critical patent/WO2013038519A1/en
Priority to JP2012501042A priority patent/JP4959032B1/en
Publication of WO2013038519A1 publication Critical patent/WO2013038519A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/137Hierarchical processing, e.g. outlines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]

Definitions

  • the present invention relates to a web page analysis apparatus and a web page analysis program, and more particularly to an apparatus and program for analyzing a structured document of a web page described in HTML (HyperText Markup Language) or the like.
  • HTML HyperText Markup Language
  • a program called a search engine has been provided to search for a web page on which desired information is posted.
  • a search engine built in the search site searches a web page including the input keyword, and a plurality of searched Are presented as a list of URLs.
  • the search engine simply searches for and extracts web pages including keywords, the extracted web pages include many web pages that cause noise that the user does not want. Therefore, the user has to manually access the URLs listed by the search engine and check the contents of the web pages one by one.
  • a search engine is used to search a web page of an EC (electronic commerce) site on which products and prices are posted in order to conduct price surveys on various products. For example, if you search by entering the keyword “price” that seems to be described in any EC site, many web pages of EC sites are extracted, but web pages other than EC sites are also detected as noise in the extraction results. It will be included. In this case, the user needs to open the web pages one by one including a lot of noise and check the contents, so that there is a problem that work efficiency deteriorates.
  • EC electronic commerce
  • Patent Document 1 for all HTML documents, classification is performed by extracting structural features from features based on tags and keywords, features based on image information, features based on link information, and features based on tag structures, and collating with rules. Calculate the goodness of fit. Then, using the input keyword and type, the result of narrowing down by deleting documents below a certain fitness level is displayed.
  • Patent Document 1 has a problem that it cannot immediately respond to changes in web pages on the Internet. In other words, the characteristics of web pages change day by day, and in response to this change, it is necessary to reconstruct rules by repeating trial and error while accumulating experience knowledge in the same way as creating a decision rule base first. .
  • Patent Document 2 discloses a teacher data input means for inputting a plurality of structured document types collected via a network as teacher data, and based on the structured document and the teacher data.
  • a determination rule creating unit that creates a determination rule for determining the types of a plurality of structured documents, and a determination rule executing unit that determines the type of the structured document according to the determination rule created by the determination rule creating unit.
  • Patent Documents 1 and 2 have a problem that although the web page type can be determined, the content of the web page cannot be analyzed. Usually, a lot of information is included in one web page. The information desired by the user is more often present in a part of the web page than in the entire web page. For this reason, even if extraction can be performed by narrowing down to the type of web page desired by the user, it is necessary for the user to visually confirm the content of the web page.
  • the present invention has been made to solve such a problem, and an object thereof is to make it possible to efficiently extract desired information from many web pages on a website on the Internet.
  • the present invention analyzes the hierarchical structure of the tags of the structured document constituting the web page, and sets the depth point corresponding to the depth from the root for each line of the structured document. At the same time, for a line including the keyword, a keyword point corresponding to the keyword is added to the depth point. Then, based on the depth point and the keyword point, a predetermined range including a line including the keyword and several lines before and after the keyword is extracted as a target block, and information satisfying a predetermined condition is extracted from the extracted target block. I try to extract.
  • a set of rows in a predetermined range at a short distance from a row including a keyword is extracted as a target block, and the target Information satisfying a predetermined condition is extracted from the block. Therefore, if the conditions necessary for extracting the desired information are set as the predetermined conditions, the desired information that is often posted at a short distance from the keyword can be automatically extracted from the web page. it can. Thereby, desired information can be efficiently extracted from many web pages on a website on the Internet.
  • FIG. 6 is a diagram for explaining an extraction example of a target block by graphing the points shown in FIG. 5. It is a flowchart which shows the operation example of the web page analysis apparatus by this embodiment.
  • FIG. 1 is a diagram illustrating a configuration example of a web page analysis system including a web page analysis apparatus according to the present embodiment.
  • the web page analysis system of this embodiment includes a web page collection unit 10, a web page storage unit 20, a web page analysis device 30, a display unit 40, and an operation unit 50.
  • the web page collection unit 10 collects many web pages from many websites on the Internet.
  • the function of the web page collection unit 10 is realized by, for example, a program of a page collection robot called “crawler”.
  • the web page storage unit 20 stores many web pages collected by the web page collection unit 10.
  • the web page analysis device 30 analyzes many web pages stored in the web page storage unit 20, extracts information desired by the user from the web pages, and outputs the extracted information.
  • desired information extracted by the web page analyzing apparatus 30 is output to the display unit 40 such as a display.
  • the output destination is not limited to the display unit 40.
  • it may be a printing unit such as a printer, or a recording medium such as a hard disk or a semiconductor memory.
  • the operation unit 50 is used when a user inputs a keyword to the web page analyzing apparatus 30, and is configured by a keyboard or a mouse, for example.
  • the operation unit 50 is also used when the user designates an information type indicating what kind of information is desired to be extracted as desired information.
  • the user designates, as a desired information type, the type of information such as whether he wants to extract product price information, company information, or job information.
  • the user inputs a word that seems to be related to the specified information type as a keyword. For example, a word such as “tax included” for product price information, “representative” for company information, and “work” for job offer information are input as keywords.
  • the present invention is not limited to this.
  • an information type and a predetermined keyword are stored in association with each other in advance, and when the user operates the operation unit 50 to specify a desired information type, the keyword associated with the information type is automatically input. It may be.
  • the web page analysis device 30 includes an analysis processing unit 31, a keyword setting unit 32, and a keyword storage unit 33.
  • the analysis processing unit 31 analyzes many web pages stored in the web page storage unit 20, and executes processing for extracting information desired by the user from the web page and outputting it. A detailed functional configuration of the analysis processing unit 31 will be described later with reference to FIG.
  • the keyword setting unit 32 sets a keyword used when the analysis processing unit 31 analyzes a web page.
  • the keyword setting unit 32 also sets the value of keyword points (details will be described later) to be assigned to the set keyword.
  • the keyword storage unit 33 stores the keywords set by the keyword setting unit 32 and the corresponding keyword points.
  • the keyword setting unit 32 sets a word input by the user through the operation of the operation unit 50 as a keyword.
  • the keyword setting unit 32 additionally sets a word extracted from the web page to be analyzed as a keyword in the course of web page analysis processing by the analysis processing unit 31.
  • the keyword setting unit 32 sets keyword point values to be assigned to the keywords set in this way, and stores the keywords and keyword points in the keyword storage unit 33 in association with each other.
  • the keyword setting unit 32 initially sets, for example, a predetermined value as a keyword point at the time of input for the keyword input by the user through the operation of the operation unit 50.
  • the keyword setting unit 32 initially sets a value obtained by a predetermined calculation as a keyword point. Even after the keyword points are initially set in this way, the keyword setting unit 32 performs the predetermined calculation and updates the keyword points as needed each time the analysis of the web page is advanced.
  • the analysis processing unit 31 performs an analysis process on a web page including a keyword stored in the keyword storage unit 33 among web pages stored in the web page storage unit 20.
  • the keyword stored in the keyword storage unit 33 changes depending on the learning effect. Also, the value of the keyword points given to the keyword is increased or decreased due to the learning effect.
  • the keyword storage unit 33 Only the web page including the keyword is subjected to analysis by the analysis processing unit 31.
  • keywords extracted from the web pages are additionally stored in the keyword storage unit 33, and there are web pages that do not include the original keyword “tax included”. It is included in the analysis target by the analysis processing unit 31.
  • FIG. 2 is a block diagram illustrating a functional configuration example of the web page analyzing apparatus 30 according to the present embodiment.
  • FIG. 3 is a diagram illustrating an example of a web page to be analyzed by the web page analyzing apparatus according to the present embodiment.
  • FIG. 4 is a diagram showing an example of the structured document (HTML document) of the web page shown in FIG.
  • FIG. 5 is a diagram showing points for each line of the HTML document shown in FIG.
  • FIG. 6 is a diagram for explaining an extraction example of the target block by graphing the points shown in FIG.
  • 3 and 4 show a web page of an EC site and its HTML document as an example of the web page.
  • 5 and 6 show analysis examples of the web page shown in FIGS. 3 and 4.
  • the web page analysis apparatus 30 of the present embodiment has a depth point assigning unit 34 and a keyword point assigning unit 35 in addition to the keyword setting unit 32 and the keyword storage unit 33 described above as the functional configuration.
  • a block extracting unit 36, an information extracting unit 37, and a filtering unit 38. 1 is configured by the depth point assigning unit 34, the keyword point assigning unit 35, the block extracting unit 36, the information extracting unit 37, and the filtering unit 38.
  • the web page analysis device 30 of the present embodiment actually includes a CPU that executes various arithmetic processes, a ROM that stores a web page analysis program, a RAM that is used as a work area for data storage and program execution, and a hard disk. And the CPU operates according to the web page analysis program stored in the ROM, thereby executing processing by the functional blocks 32 to 38.
  • a recording medium for storing the web page analysis program a CD-ROM, a flexible disk, a hard disk, a magnetic tape, an optical disk, a magneto-optical disk, a DVD, a nonvolatile memory card, or the like can be used instead of the ROM.
  • the web page analysis program may be downloaded to a computer via a network such as the Internet.
  • the depth point assigning unit 34 analyzes the hierarchical structure of the tags of the structured document (HTML document) constituting the web page to be analyzed among the web pages stored in the web page storage unit 20. A depth point corresponding to the depth from the root is assigned to each line of the structured document.
  • HTML document structured document
  • HTML can express various things on a web page by using a command sentence called a tag surrounded by “ ⁇ ” and “>” symbols.
  • the tag includes a start tag indicating the start location of the instruction and an end tag indicating the end location of the instruction.
  • the start tag is represented by a combination of “ ⁇ ” and “>” and a command statement.
  • the end tag is represented by a combination of “ ⁇ /”, “>” and a command statement.
  • HTML documents take the form of a tree structure with tags.
  • tags There are a ⁇ head> tag and a ⁇ body> tag in the lower hierarchy (child hierarchy) of the ⁇ html> tag, and a tree structure corresponding to the contents of the web page is expanded in the lower hierarchy of the ⁇ body> tag.
  • the start tag and end tag for one command statement are always in the same level, but if another command tag is inserted between the start tag and the end tag, the tag for the other command statement is hierarchical. Goes down by one.
  • the depth point assigning unit 34 assigns a depth point for each row according to the depth of the hierarchy from the root of the HTML document.
  • “every row” is synonymous with “every start tag”. That is, in appearance of an HTML document, even if a plurality of start tags are apparently present on the same line, it is assumed that the line has changed for each start tag, and a depth point is given.
  • the start tag and the end tag related to one command statement are always in the same hierarchy in the HTML document, it is sufficient to give a depth point to the line of the start tag.
  • the depth point is “1” (see FIG. 5; the same applies hereinafter).
  • the depth point is “2”.
  • the depth point of the ⁇ meta> tag on the third line, the ⁇ link> tag on the fourth line, and the ⁇ title> tag on the fifth line are all “3”.
  • “ ⁇ / Head>” in the next 6th line is an end tag, so it goes up to the second layer. Therefore, the ⁇ body> tag on the seventh line is the second layer, and the depth point is “2”.
  • the keyword point giving unit 35 adds a keyword point corresponding to the keyword to the depth point for a line including the keyword in the HTML document.
  • the keywords used here and the corresponding keyword points are set by the keyword setting unit 32 and stored in the keyword storage unit 33.
  • the keywords stored in the keyword storage unit 33 are initially only input by the user through the operation of the operation unit 50, but are gradually added by repeated learning. Further, the value of the keyword point stored in the keyword storage unit 33 is updated as needed as the analysis of a plurality of web pages proceeds.
  • the keyword “special price” described in the sixth layer to which the ⁇ span> tag on the 24th line belongs is additionally set by learning. “2.31” is set as the point. For this reason, the keyword point giving unit 35 adds the keyword point “2.31” set for the keyword “special price” to the depth point “6” of the ⁇ span> tag, so that the ⁇ span> tag The point on the 24th line is “8.31”.
  • the keyword “cart” described in the seventh layer to which the ⁇ input> tag on the 28th line belongs is additionally set by learning, and for this keyword “cart” As a keyword point, “2.02” is set. For this reason, the keyword point giving unit 35 adds the keyword point “2.02” set for the keyword “cart” to the depth point “7” of the ⁇ input> tag, so that the ⁇ input> tag The point on the 28th line is “9.02”.
  • a keyword point calculation method set by the keyword setting unit 32 and stored in the keyword storage unit 33 will be described later.
  • the block extraction unit 36 adds the keyword points and produces a difference from the depth points (in the example of FIG. 4, the 24th line of the ⁇ span> tag including the keyword “special price” and “cart”).
  • a set of rows in a predetermined range including the ⁇ input> tag in the ⁇ input> tag in which the keyword is included) is extracted as a block (referred to as a target block) from which desired information and keywords are to be extracted.
  • the target block defines a range in which there is a high possibility that desired information is included.
  • the end point of the predetermined range that defines the target block is the first line where the keyword points are not added and the depth point is minimal, after the line where the difference occurs.
  • the start point of the predetermined range is a line before the line where the difference occurs, and is the line having the same value as the end point and the minimum depth point.
  • FIG. 6 is a simple line graph of the points given to each line of the HTML document shown in FIG. 4 (the depth points shown in FIG. 5 and the result of adding this to the keyword points).
  • the horizontal axis indicates the number of rows, and the vertical axis indicates the point value.
  • a broken line graph 61 is a graph of depth points
  • a solid line graph 62 is a graph of the addition results of depth points and keyword points.
  • a range surrounded by a broken-line square is the target block 63. Further, when the corresponding portion of the target block 63 is shown on the web page shown in FIG. 3, a range 63 ′ surrounded by a broken-line square corresponds to the target block 63.
  • the block extraction unit 36 does not add keyword points in the line after the 28th line (that is, there is no difference from the depth point), and the depth point is minimized.
  • the first line is the end point of the predetermined range.
  • the 29th line is the end point.
  • the value of the depth point at this end point is “3”.
  • the block extraction unit 36 sets the line preceding the 24th line and having the same value “3” as the end point and the minimum depth point as the start point of the predetermined range.
  • the 15th line is the starting point.
  • the information extraction unit 37 extracts information satisfying a predetermined condition from the target block extracted by the block extraction unit 36. For example, when the user specifies price information of a product as the type of information desired to be extracted from the web page through the operation of the operation unit 50, the information extraction unit 37 extracts the product name and price as information satisfying a predetermined condition. . That is, the information extraction unit 37 extracts the product name and price from the target block 63 set in the web page of the EC site shown in FIG.
  • the information extraction unit 37 extracts a product name by morphological analysis.
  • product names are often composed of unknown words and nouns. Therefore, the information extraction unit 37 performs a morphological analysis on a sentence or a word including a product name, and determines that it is a product name if 70% of the morphemes are occupied by unknown words and nouns.
  • a price there are a list of numerical values and (comma), and characters such as “ ⁇ ” or “yen” are often included before or after the list. Therefore, the information extraction unit 37 determines the price using such a regular expression condition.
  • the information extraction unit 37 includes information such as the location, representative name, capital, telephone number, number of employees, date of establishment, etc. as information that satisfies a predetermined condition. To extract. For example, the information extraction unit 37 performs morphological analysis and determines that a part formed by a combination of a place name and a numerical value is a location. Further, it is determined that a part consisting of a combination of a number and () or-is a telephone number. If there is a list of numbers and (comma) and there is a character string of capital near the list, it is determined that the number is capital. Other information is also determined by morphological analysis, regular expression conditions, and nearby character string conditions.
  • the information extraction unit 37 extracts information such as work hours, salary, allowance, and work location as information that satisfies a predetermined condition.
  • the information extraction unit 37 determines whether the information is desired information based on the morphological analysis, the regular expression condition, and the condition of the character string existing nearby.
  • the filtering unit 38 determines whether or not one or more types of information determined in advance according to the information type are prepared for the information extracted from the target block by the information extracting unit 37, and only when they are prepared.
  • the information extracted from the target block is output to the display unit 40. For example, when the information type designated by the user is price information of a product, the filtering unit 38 determines whether or not both a product name and a price are available. If only one of the information extracted from the target block is present, the filtering unit 38 does not output the information to the display unit 40.
  • the filtering unit 38 determines whether, for example, the location, representative name, and capital are all available.
  • the information extraction unit 37 determines whether, for example, three of salary, allowance, and work location are available. If all three pieces of information extracted from the target block are not prepared, the filtering unit 38 does not output the information to the display unit 40.
  • the keyword setting unit 32 sets, as a keyword, a word input by the user through the operation of the operation unit 50 in the first stage before starting the analysis of the web page stored in the web page storage unit 20. And stored in the keyword storage unit 33.
  • the keyword setting unit 32 extracts a word included in the target block extracted by the block extraction unit 36 in the course of the web page analysis process, additionally sets it as a keyword, and stores it in the keyword storage unit 33. .
  • the keyword setting unit 32 extracts words other than the product name and price included in the target block from the target block, and stores the keyword as a new keyword. Additional setting is made in the section 33.
  • the keyword setting unit 32 receives a notification from the information extraction unit 37 that extracted the information.
  • the keyword setting unit 32 extracts words other than the product name and price grasped by receiving this notification from the target block.
  • the keyword setting unit 32 calculates and stores keyword points corresponding to the keywords stored in the keyword storage unit 33, including existing keywords and newly set keywords. For example, the keyword setting unit 32 uses the total number of target blocks extracted by the block extraction unit 36 from the web page to be analyzed and the number of appearances of words set as a keyword, and the number of words relative to the total number of target blocks. A value corresponding to the ratio of the number of appearances is calculated and set as a keyword point.
  • the block extraction unit 36 extracts zero or one or more target blocks from one web page. If a plurality of web pages are analyzed, the block extraction unit 36 can extract a total of N target blocks from the plurality of web pages. Then, the keyword setting unit 32 extracts various words as keywords from the N target blocks. At this time, the same word can be extracted M times from one or more target blocks. In this case, the keyword setting unit 32 calculates the value of M / N and sets it as a keyword point.
  • the keyword points given to the word become larger. Further, if the number M of appearances of the words is the same, the smaller the total number N of target blocks, the larger the keyword points.
  • target blocks that are likely to contain product names and prices are identified based on keyword points and depth points, and new words other than product names and prices are extracted from the target blocks as keywords. It is a mechanism to do. For this reason, the number of appearances M increases and the keyword points tend to increase for words that are often placed close to product names and prices.
  • the keyword setting unit 32 stores the number of appearances M and the total number N of the extracted target blocks in association with each word extracted as a keyword, and uses them for calculating keyword points.
  • the keyword setting unit 32 stores the calculated keyword points in the keyword storage unit 33 in association with the keywords.
  • the newly calculated keyword points are stored in the keyword storage unit 33.
  • the recalculated keyword points are updated and stored in the keyword storage unit 33.
  • FIG. 7 is a flowchart showing an operation example of the web page analyzing apparatus 30 according to the present embodiment.
  • the flowchart shown in FIG. 7 starts when the user operates the operation unit 50 to give a web page analysis instruction to the web page analysis device 30. It is assumed that a plurality of web pages are already stored in the web page storage unit 20 at the start of the flowchart shown in FIG.
  • the user designates an information type indicating what kind of information is desired to be extracted as desired information through the operation of the operation unit 50 (step S1).
  • product price information is specified as an information type.
  • a word that is considered to be related to the designated information type is input as a keyword by the user through the operation of the operation unit 50 (step S2).
  • the word “tax included” is input.
  • the keyword setting unit 32 sets the input word as a keyword and stores it in the keyword storage unit 33.
  • the depth point assigning unit 34 acquires any one of the plurality of web pages stored in the web page storage unit 20 (step S3), and includes a keyword (in this case) in the web page. ("Tax included") is included (step S4). If no keyword is included, the process proceeds to step S13. As a result, web pages that do not contain any keywords are excluded from the analysis target.
  • the depth point assigning unit 34 analyzes the hierarchical structure of the tags of the HTML document constituting the web page currently being analyzed, and calculates the depth point corresponding to the depth from the root for each row. (Step S5).
  • the keyword point assigning unit 35 deepens the keyword point corresponding to the keyword in a line including the keyword in the HTML document based on the keyword stored in the keyword storage unit 33 and the corresponding keyword point. Is added to the point (step S6).
  • a keyword point for example, a predetermined value
  • a keyword is added to the depth point for a line including the keyword “tax included”.
  • the block extraction unit 36 extracts a target block from the web page currently being analyzed based on the depth point and the keyword point (step S7).
  • the block extraction unit 36 includes a line in which a difference from the depth point is generated by adding the keyword points, and the keyword points are not added in the lines before and after the line and the depth is increased.
  • a predetermined range having a start point and an end point at a line having a minimum point is extracted as a target block.
  • the information extraction unit 37 extracts desired information satisfying a predetermined condition from the target block extracted by the block extraction unit 36 (step S8).
  • the information extraction unit 37 extracts the product name and price from the target block as desired information that satisfies a predetermined condition.
  • the filtering unit 38 determines whether or not one or more types of information predetermined according to the information type are available for the desired information extracted from the target block by the information extracting unit 37 (step S9). ). Here, it is determined whether or not two of a predetermined product name and price according to the information type of product price information are available.
  • step S13 when necessary information is not prepared as desired information extracted from the target block, the process proceeds to step S13.
  • the filtering unit 38 outputs the desired information (product name and price) extracted from the target block to the display unit 40 (step S10).
  • the keyword setting unit 32 extracts words (words other than the product name and price) included in the target block extracted by the block extraction unit 36, additionally sets them as keywords, and stores them in the keyword storage unit 33. (Step S11).
  • the keyword setting unit 32 calculates keyword points corresponding to the keywords stored in the keyword storage unit 33 including the newly set keywords, and stores the keyword points in the keyword storage unit 33 (step S12).
  • the depth point assigning unit 34 determines whether or not all the plurality of web pages stored in the web page storage unit 20 have been processed (step S13). When the process is completed for all web pages, the process of the flowchart illustrated in FIG. 7 is terminated. On the other hand, if the processing has not been completed for all the web pages, the process returns to step S3, another web page is acquired, and the same processing as described above is repeated.
  • step S11 and S12 If a new keyword is additionally set in steps S11 and S12 before returning to step S3 to acquire another web page, the keyword “tax included” entered by the user is included in the other web page. If the additional set keyword is included in the other web page, the other web page extracts the desired information (steps S5 to S10) and the keyword learning process (step S11 to S12).
  • the processing is terminated when the processing of the plurality of web pages stored in the web page storage unit 20 is completed, but the present invention is not limited to this example.
  • the processing of a plurality of web pages stored in the web page storage unit 20 may be performed a plurality of times automatically or through the operation of the operation unit 50 by the user.
  • a web page that has not been subjected to analysis processing in the first round may be subject to analysis processing in the second and subsequent rounds.
  • the possibility that desired information can be extracted from more web pages is increased.
  • the processing efficiency can be improved.
  • the hierarchical structure of the tags of the HTML document constituting the web page is analyzed, and a depth point corresponding to the depth from the root is given for each line, and the keyword For a line including, a keyword point corresponding to the keyword is added to the depth point. Based on the depth point and the keyword point, a predetermined range before and after the line including the keyword is extracted as a target block, and information satisfying a predetermined condition from the extracted target block (for example, a product name) And price).
  • a predetermined condition from the extracted target block for example, a product name
  • a set of rows within a predetermined range at a short distance from the row including the keyword is extracted as a target block, and the target Desired information satisfying a predetermined condition is extracted from the block.
  • a product name and a price are extracted as desired information that satisfies a predetermined condition using morphological analysis or regular expressions.
  • desired information can be efficiently extracted from many web pages on a website on the Internet.
  • the block extraction unit 36 is provided, and instead of simply extracting information satisfying a predetermined condition from the web page, the target block is extracted from the web page, and the predetermined block is extracted only from the target block. Information that satisfies the condition is extracted. Therefore, for example, even if the product name and price exist in one web page, those that are structurally distant from each other and poorly related to each other are not considered as the desired information. Can be excluded from extraction.
  • the filtering unit 38 is provided so that the product name and price extracted from the target block are not output as desired information unless both are available. Accordingly, a case where only one of the product name and the price happens to be in the target block can be excluded as not corresponding to the desired information. Therefore, it is possible to reduce the extraction of noise that is not desired information.
  • the keyword setting unit 32 is provided so that the keyword used for extracting the target block can be variably set by learning.
  • the keyword to be variably set is extracted from the target block. That is, in the present embodiment, an existing keyword included in the target block or a word that is close to desired information can be additionally set as a keyword.
  • the extraction accuracy of desired information will depend on the quality of most of the keyword.
  • a value corresponding to the ratio of the number of words to the total number of target blocks is calculated and set as a keyword point.
  • the keyword points may be calculated in consideration of the size of the structural distance from the desired information to the word.
  • a method is conceivable in which a word is multiplied by a coefficient so that a word having a shorter structural distance from the desired information has a larger keyword point.
  • the “structural distance” referred to here may be, for example, a difference in the number of rows or a difference in the number of layers. Or it is good also as a difference of a close degree when the tree structure of a hierarchy is seen as a family tree in a pseudo manner.
  • the example in which the keyword is learned only when the information extracted from the target block by the information extraction unit 37 has the necessary information as the information type has been described.
  • the necessary information is prepared.
  • the keyword may be learned even when it is not.
  • the filtering unit 38 controls to output desired information only when necessary information is available, it is preferable to perform keyword learning only when necessary information is available.
  • the keyword point calculated by the keyword setting unit 32 when the keyword point calculated by the keyword setting unit 32 is equal to or less than the threshold value, the keyword point may be set to “0”. Even if the occurrence frequency of a word set as a keyword is very low and the keyword point has a small value, if it is set as it is, the difference between the depth point and the line containing the word will be small. There will be.
  • a predetermined range including a line having only a slight difference is also an extraction target of the target block.
  • the extracted target block itself may become noise.
  • the values are all rounded to “0” when the keyword points are equal to or less than the threshold value, the extraction of the target block that becomes noise can be reduced, and the processing efficiency can be improved.
  • the method of extracting the target block by the block extraction unit 36 is shown as an example, but the present invention is not limited to this.
  • a line where a difference from the depth point is generated by adding keyword points, a predetermined number of lines before the line where the difference is generated, and a predetermined number of lines after the line where the difference is generated A range including a line may be extracted as a target block.
  • the extraction method according to the above embodiment there is a high possibility that the target block can be set to an accurate range without excess or deficiency, so that it is possible to increase processing efficiency while reducing omission of extraction of desired information. it can.

Abstract

The present invention analyzes the hierarchical structure of tags of a structured document configuring a Web page, imparts a depth point corresponding to depth from a root for each row, and adds a keyword point corresponding to a keyword for a row in which the keyword is included to the depth point. In addition, on the basis of the depth point and the keyword point, a predetermined range, including the row in which the keyword is included and a number of rows before and after the row, is extracted as an object block, and by extracting information satisfying a predetermined condition from within the extracted object block, it is possible to automatically extract desired information, which is often listed at a short distance from the keyword, from the Web page.

Description

ウェブページ解析装置およびウェブページ解析用プログラムWeb page analysis apparatus and web page analysis program
 本発明は、ウェブページ解析装置およびウェブページ解析用プログラムに関し、特に、HTML(HyperText Markup Language)等で記述されたウェブページの構造化文書を解析する装置およびプログラムに関するものである。 The present invention relates to a web page analysis apparatus and a web page analysis program, and more particularly to an apparatus and program for analyzing a structured document of a web page described in HTML (HyperText Markup Language) or the like.
 現在、インターネット上には多数のウェブページが存在し、多種多様な情報が提供されている。ユーザは、これらのウェブページを閲覧することにより、所望の情報を取得することが可能である。 Currently, there are many web pages on the Internet, and a wide variety of information is provided. The user can acquire desired information by browsing these web pages.
 従来、所望の情報が掲載されたウェブページを探し出すために、検索エンジンと呼ばれるプログラムが提供されている。基本的には、ユーザが所望の情報に関連するキーワードを検索サイトにて入力すると、当該検索サイトに組み込まれている検索エンジンが、入力されたキーワードを含むウェブページを検索し、検索された複数のウェブページをURLのリストとして提示するようになっている。 Conventionally, a program called a search engine has been provided to search for a web page on which desired information is posted. Basically, when a user inputs a keyword related to desired information on a search site, a search engine built in the search site searches a web page including the input keyword, and a plurality of searched Are presented as a list of URLs.
 しかし、検索エンジンでは、単純にキーワードを含むウェブページを探索して抽出するだけなので、抽出されたウェブページの中には、ユーザが希望しないノイズとなるウェブページも多く含まれている。そのため、ユーザは、検索エンジンによってリストアップされたURLに対して順にアクセスして、ウェブページの内容を1つ1つ確認していく手作業が必要であった。 However, since the search engine simply searches for and extracts web pages including keywords, the extracted web pages include many web pages that cause noise that the user does not want. Therefore, the user has to manually access the URLs listed by the search engine and check the contents of the web pages one by one.
 例えば、各種商品の価格調査をするために、商品と価格とが掲載されたEC(電子商取引)サイトのウェブページを検索エンジンで検索する場合を考える。例えば、どのECサイトにも記述されていそうな「価格」というキーワードを入力して検索すると、ECサイトのウェブページが多く抽出されるが、ECサイト以外のウェブページも抽出結果の中にノイズとして含まれてしまう。この場合ユーザは、多くのノイズも含めてウェブページを1つ1つ開いて内容を確認していく必要があるので、作業効率が悪化するという問題があった。 Suppose, for example, that a search engine is used to search a web page of an EC (electronic commerce) site on which products and prices are posted in order to conduct price surveys on various products. For example, if you search by entering the keyword “price” that seems to be described in any EC site, many web pages of EC sites are extracted, but web pages other than EC sites are also detected as noise in the extraction results. It will be included. In this case, the user needs to open the web pages one by one including a lot of noise and check the contents, so that there is a problem that work efficiency deteriorates.
 これに対して、ウェブページのような構造化文書の種別を判定する手法が提案されている(例えば、特許文献1,2参照)。この判定手法を用いれば、例えばECサイトのウェブページだけを検索することが可能となる。
特開2000-29902号公報 特開2003-308327号公報
On the other hand, a method for determining the type of a structured document such as a web page has been proposed (see, for example, Patent Documents 1 and 2). If this determination method is used, it is possible to search only the web page of the EC site, for example.
JP 2000-29902 A JP 2003-308327 A
 特許文献1では、あらかじめHTML文書すべてについて、タグとキーワードによる特徴、イメージ情報による特徴、リンク情報による特徴、タグ構造による特徴から構造的な特徴を抽出し、ルールと照合することによって、分類する種別への適合度を計算する。そして、入力されたキーワードと種別を用いて、ある適合度以下の文書を削除して絞り込んだ結果を表示する。 In Patent Document 1, for all HTML documents, classification is performed by extracting structural features from features based on tags and keywords, features based on image information, features based on link information, and features based on tag structures, and collating with rules. Calculate the goodness of fit. Then, using the input keyword and type, the result of narrowing down by deleting documents below a certain fitness level is displayed.
 しかしながら、この特許文献1に記載の技術では、構造的特徴ルールベースおよび調整ルールの構築や調整が必須である。このために、ルールのベースとなる特徴を選び出し、各ルールに与える点数を設定するなどのチューニングが必要であるので、精度のよい判定を行うには多くの手間と時間を要するという問題があった。 However, in the technique described in Patent Document 1, it is essential to construct and adjust the structural feature rule base and the adjustment rule. For this reason, there is a problem that it takes a lot of time and labor to make a precise determination because it requires tuning such as selecting features that serve as the base of the rule and setting the number of points given to each rule. .
 また、特許文献1に記載の技術では、インターネット上のウェブページの変化に即座に対応できないという問題もあった。すなわち、ウェブページの特徴は日々変化しており、この変化に応じて、最初に判定ルールベースを作成したのと同様に、経験知識を積み重ねながら試行錯誤を繰り返してルールを再構築する必要がある。 Also, the technique described in Patent Document 1 has a problem that it cannot immediately respond to changes in web pages on the Internet. In other words, the characteristics of web pages change day by day, and in response to this change, it is necessary to reconstruct rules by repeating trial and error while accumulating experience knowledge in the same way as creating a decision rule base first. .
 このような問題の解消を目的として、特許文献2では、ネットワークを介して収集された複数の構造化文書の種別を教師データとして入力する教師データ入力手段と、構造化文書および教師データに基づいて、複数の構造化文書の種別を判定するための判定ルールを作成する判定ルール作成手段と、判定ルール作成手段により作成された判定ルールに従って構造化文書の種別を判定する判定ルール実行手段とを備える。 For the purpose of solving such a problem, Patent Document 2 discloses a teacher data input means for inputting a plurality of structured document types collected via a network as teacher data, and based on the structured document and the teacher data. A determination rule creating unit that creates a determination rule for determining the types of a plurality of structured documents, and a determination rule executing unit that determines the type of the structured document according to the determination rule created by the determination rule creating unit. .
 しかしながら、上記特許文献1,2に記載の技術では、ウェブページの種別までは判定することができるものの、ウェブページの内容までは解析することができないという問題があった。通常、1つのウェブページの中にも多くの情報が含まれている。ユーザが所望する情報というのは、ウェブページ全体にある場合よりも、ウェブページの中の一部に存在している場合の方が多い。そのため、仮にユーザが希望する種別のウェブページに絞って抽出することができたとしても、更にウェブページの内容をユーザが目視により確認していく作業が必要となる。 However, the techniques described in Patent Documents 1 and 2 have a problem that although the web page type can be determined, the content of the web page cannot be analyzed. Usually, a lot of information is included in one web page. The information desired by the user is more often present in a part of the web page than in the entire web page. For this reason, even if extraction can be performed by narrowing down to the type of web page desired by the user, it is necessary for the user to visually confirm the content of the web page.
 例えば、上述のようにウェブページの情報を解析して各種商品の価格調査をしたい場合、特許文献1,2に記載の技術によれば、種別の判定によりECサイトのウェブページだけを抽出することまでは可能である。しかしながら、そのウェブページの中のどこに商品と価格が掲載されているかまでは解析することができない。そのため、ユーザは、抽出されたECサイトのウェブページを1つ1つ開いて内容を確認していく手作業が必要であり、作業効率が悪化するという問題があった。 For example, if it is desired to analyze the price of various products by analyzing the information on the web page as described above, according to the techniques described in Patent Literatures 1 and 2, only the web page of the EC site is extracted by determining the type. Is possible. However, it is impossible to analyze where the product and price are listed on the web page. For this reason, the user needs to manually open the extracted web pages of the EC site one by one and check the contents, resulting in a problem that work efficiency deteriorates.
 本発明は、このような問題を解決するために成されたものであり、インターネット上のウェブサイトにある多くのウェブページから所望の情報を効率的に抽出できるようにすることを目的とする。 The present invention has been made to solve such a problem, and an object thereof is to make it possible to efficiently extract desired information from many web pages on a website on the Internet.
 この目的を達成するために、本発明では、ウェブページを構成している構造化文書のタグの階層構造を解析し、ルートからの深さに応じた深さポイントを構造化文書の行ごとに付与するとともに、キーワードが含まれる行については当該キーワードに応じたキーワードポイントを深さポイントに加算する。そして、深さポイントとキーワードポイントとに基づいて、キーワードが含まれている行およびその前後の数行を含む所定範囲を対象ブロックとして抽出し、抽出した対象ブロック内から所定の条件を満たす情報を抽出するようにしている。 In order to achieve this object, the present invention analyzes the hierarchical structure of the tags of the structured document constituting the web page, and sets the depth point corresponding to the depth from the root for each line of the structured document. At the same time, for a line including the keyword, a keyword point corresponding to the keyword is added to the depth point. Then, based on the depth point and the keyword point, a predetermined range including a line including the keyword and several lines before and after the keyword is extracted as a target block, and information satisfying a predetermined condition is extracted from the extracted target block. I try to extract.
 このように構成した本発明によれば、ウェブページを構成している構造化文書において、キーワードが含まれている行から近い距離にある所定範囲の行の集合が対象ブロックとして抽出され、当該対象ブロックから所定の条件を満たす情報が抽出される。よって、所望の情報を抽出するために必要な条件を上記所定の条件として設定しておけば、キーワードから近い距離に掲載されることが多い所望の情報をウェブページから自動的に抽出することができる。これにより、インターネット上のウェブサイトにある多くのウェブページから所望の情報を効率的に抽出することができる。 According to the present invention configured as described above, in a structured document constituting a web page, a set of rows in a predetermined range at a short distance from a row including a keyword is extracted as a target block, and the target Information satisfying a predetermined condition is extracted from the block. Therefore, if the conditions necessary for extracting the desired information are set as the predetermined conditions, the desired information that is often posted at a short distance from the keyword can be automatically extracted from the web page. it can. Thereby, desired information can be efficiently extracted from many web pages on a website on the Internet.
本実施形態によるウェブページ解析装置を含むウェブページ解析システムの構成例を示す図である。It is a figure which shows the structural example of the web page analysis system containing the web page analysis apparatus by this embodiment. 本実施形態によるウェブページ解析装置の機能構成例を示すブロック図である。It is a block diagram which shows the function structural example of the web page analysis apparatus by this embodiment. 本実施形態のウェブページ解析装置により解析対象とするウェブページの一例を示す図である。It is a figure which shows an example of the web page made into analysis object by the web page analysis apparatus of this embodiment. 図3に示したウェブページのHTML文書の一例を示す図である。It is a figure which shows an example of the HTML document of the web page shown in FIG. 図4に示したHTML文書の行ごとのポイントを示す図である。It is a figure which shows the point for every line of the HTML document shown in FIG. 図5に示したポイントをグラフ化して対象ブロックの抽出例を説明するための図である。FIG. 6 is a diagram for explaining an extraction example of a target block by graphing the points shown in FIG. 5. 本実施形態によるウェブページ解析装置の動作例を示すフローチャートである。It is a flowchart which shows the operation example of the web page analysis apparatus by this embodiment.
 以下、本発明の一実施形態を図面に基づいて説明する。図1は、本実施形態によるウェブページ解析装置を含むウェブページ解析システムの構成例を示す図である。図1に示すように、本実施形態のウェブページ解析システムは、ウェブページ収集部10、ウェブページ記憶部20、ウェブページ解析装置30、表示部40および操作部50を備えて構成されている。 Hereinafter, an embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a diagram illustrating a configuration example of a web page analysis system including a web page analysis apparatus according to the present embodiment. As shown in FIG. 1, the web page analysis system of this embodiment includes a web page collection unit 10, a web page storage unit 20, a web page analysis device 30, a display unit 40, and an operation unit 50.
 ウェブページ収集部10は、インターネット上にある多くのウェブサイトから多くのウェブページを収集してくるものである。このウェブページ収集部10の機能は、例えば、「クローラ」と呼ばれるページ収集ロボットのプログラムにより実現される。ウェブページ記憶部20は、ウェブページ収集部10により収集された多くのウェブページを記憶する。 The web page collection unit 10 collects many web pages from many websites on the Internet. The function of the web page collection unit 10 is realized by, for example, a program of a page collection robot called “crawler”. The web page storage unit 20 stores many web pages collected by the web page collection unit 10.
 ウェブページ解析装置30は、ウェブページ記憶部20に記憶された多くのウェブページを解析して、ユーザが所望する情報をウェブページから抽出して出力する。本実施形態では、ウェブページ解析装置30が抽出した所望の情報をディスプレイ等の表示部40に出力する。ただし、出力先は表示部40に限定されない。例えば、プリンタ等の印刷部であってもよいし、ハードディスクや半導体メモリ等の記録媒体であってもよい。 The web page analysis device 30 analyzes many web pages stored in the web page storage unit 20, extracts information desired by the user from the web pages, and outputs the extracted information. In the present embodiment, desired information extracted by the web page analyzing apparatus 30 is output to the display unit 40 such as a display. However, the output destination is not limited to the display unit 40. For example, it may be a printing unit such as a printer, or a recording medium such as a hard disk or a semiconductor memory.
 操作部50は、ユーザがウェブページ解析装置30に対してキーワードを入力する際に使用するものであり、例えばキーボードやマウスにより構成される。また、操作部50は、所望の情報としてどのような種類の情報を抽出したいのかを表す情報タイプをユーザが指定する際にも使用する。 The operation unit 50 is used when a user inputs a keyword to the web page analyzing apparatus 30, and is configured by a keyboard or a mouse, for example. The operation unit 50 is also used when the user designates an information type indicating what kind of information is desired to be extracted as desired information.
 例えば、ユーザは、商品の価格情報を抽出したいのか、会社情報を抽出したいのか、求人情報を抽出したいのかといった情報の種類を所望の情報タイプとして指定する。また、ユーザは、指定した情報タイプとの関連性があると思われる単語をキーワードとして入力する。例えば、商品の価格情報であれば「税込」、会社情報であれば「代表」、求人情報であれば「勤務」などの単語をキーワードとして入力する。 For example, the user designates, as a desired information type, the type of information such as whether he wants to extract product price information, company information, or job information. In addition, the user inputs a word that seems to be related to the specified information type as a keyword. For example, a word such as “tax included” for product price information, “representative” for company information, and “work” for job offer information are input as keywords.
 なお、ここではユーザが所望の情報タイプとキーワードとの両方を操作部50の操作により入力する例について説明したが、本発明はこれに限定されない。例えば、情報タイプと所定のキーワードとをあらかじめ関連付けて記憶しておき、ユーザが操作部50を操作して所望の情報タイプを指定したら、その情報タイプに関連付けられたキーワードを自動的に入力するようにしてもよい。 Although an example in which the user inputs both a desired information type and a keyword by operating the operation unit 50 has been described here, the present invention is not limited to this. For example, an information type and a predetermined keyword are stored in association with each other in advance, and when the user operates the operation unit 50 to specify a desired information type, the keyword associated with the information type is automatically input. It may be.
 ウェブページ解析装置30は、解析処理部31、キーワード設定部32およびキーワード記憶部33を備えて構成されている。解析処理部31は、ウェブページ記憶部20に記憶された多くのウェブページを解析し、ユーザが所望する情報をウェブページから抽出して出力する処理を実行する。なお、この解析処理部31の詳細な機能構成については、図2を用いて後述する。 The web page analysis device 30 includes an analysis processing unit 31, a keyword setting unit 32, and a keyword storage unit 33. The analysis processing unit 31 analyzes many web pages stored in the web page storage unit 20, and executes processing for extracting information desired by the user from the web page and outputting it. A detailed functional configuration of the analysis processing unit 31 will be described later with reference to FIG.
 キーワード設定部32は、解析処理部31がウェブページを解析する際に使用するキーワードを設定する。また、キーワード設定部32は、設定したキーワードに対して付与すべきキーワードポイント(詳細は後述する)の値も設定する。キーワード記憶部33は、キーワード設定部32により設定されたキーワードおよびそれに対応するキーワードポイントを記憶する。 The keyword setting unit 32 sets a keyword used when the analysis processing unit 31 analyzes a web page. The keyword setting unit 32 also sets the value of keyword points (details will be described later) to be assigned to the set keyword. The keyword storage unit 33 stores the keywords set by the keyword setting unit 32 and the corresponding keyword points.
 本実施形態において、キーワード設定部32は、操作部50の操作を通じてユーザにより入力された単語をキーワードとして設定する。また、キーワード設定部32は、解析処理部31によるウェブページの解析処理の過程において、解析対象とされたウェブページの中から抽出された単語もキーワードとして追加設定する。 In the present embodiment, the keyword setting unit 32 sets a word input by the user through the operation of the operation unit 50 as a keyword. In addition, the keyword setting unit 32 additionally sets a word extracted from the web page to be analyzed as a keyword in the course of web page analysis processing by the analysis processing unit 31.
 そして、キーワード設定部32は、このようにして設定したキーワードに対して付与すべきキーワードポイントの値を設定し、各キーワードおよびキーワードポイントを互いに関連付けてキーワード記憶部33に記憶する。 The keyword setting unit 32 sets keyword point values to be assigned to the keywords set in this way, and stores the keywords and keyword points in the keyword storage unit 33 in association with each other.
 なお、キーワード設定部32は、ユーザが操作部50の操作を通じて入力したキーワードについては、その入力時点においては例えば所定の値をキーワードポイントとして初期設定する。一方、解析処理の過程でウェブページから追加設定されたキーワードについては、キーワード設定部32は、所定の計算によって求められる値をキーワードポイントとして初期設定する。このようにしてキーワードポイントを初期設定した後も、キーワード設定部32は、ウェブページの解析を進めるごとに、上記所定の計算を行ってキーワードポイントを随時更新する。 Note that the keyword setting unit 32 initially sets, for example, a predetermined value as a keyword point at the time of input for the keyword input by the user through the operation of the operation unit 50. On the other hand, for a keyword additionally set from the web page in the course of the analysis process, the keyword setting unit 32 initially sets a value obtained by a predetermined calculation as a keyword point. Even after the keyword points are initially set in this way, the keyword setting unit 32 performs the predetermined calculation and updates the keyword points as needed each time the analysis of the web page is advanced.
 解析処理部31は、ウェブページ記憶部20に記憶されているウェブページのうち、キーワード記憶部33に記憶されたキーワードが含まれるウェブページを対象として解析処理を実行する。上述したように、解析処理の過程でウェブページの中から抽出された単語がキーワードとして追加設定されるので、キーワード記憶部33に記憶されるキーワードは学習効果により変化していく。また、キーワードに対して与えられらるキーワードポイントの値も学習効果により増減していく。 The analysis processing unit 31 performs an analysis process on a web page including a keyword stored in the keyword storage unit 33 among web pages stored in the web page storage unit 20. As described above, since the word extracted from the web page in the course of the analysis process is additionally set as a keyword, the keyword stored in the keyword storage unit 33 changes depending on the learning effect. Also, the value of the keyword points given to the keyword is increased or decreased due to the learning effect.
 このため、キーワードが追加されていない解析当初は、操作部50の操作を通じてユーザにより入力されたキーワード(例えば、情報タイプが商品の価格情報の場合は「税込」という単語)だけがキーワード記憶部33に記憶されており、当該キーワードを含むウェブページだけが解析処理部31による解析対象とされる。これに対して、複数のウェブページに対する解析処理が進むにつれて、ウェブページから抽出されたキーワードがキーワード記憶部33に追加して記憶され、当初の「税込」というキーワードが含まれていないウェブページも解析処理部31による解析対象に含まれることとなる。 Therefore, at the beginning of the analysis when no keyword is added, only the keyword input by the user through the operation of the operation unit 50 (for example, the word “tax included” when the information type is product price information) is the keyword storage unit 33. Only the web page including the keyword is subjected to analysis by the analysis processing unit 31. On the other hand, as the analysis processing for a plurality of web pages progresses, keywords extracted from the web pages are additionally stored in the keyword storage unit 33, and there are web pages that do not include the original keyword “tax included”. It is included in the analysis target by the analysis processing unit 31.
 図2は、本実施形態によるウェブページ解析装置30の機能構成例を示すブロック図である。図3は、本実施形態のウェブページ解析装置により解析対象とするウェブページの一例を示す図である。図4は、図3に示したウェブページの構造化文書(HTML文書)の一例を示す図である。図5は、図4に示したHTML文書の行ごとのポイントを示す図である。図6は、図5に示したポイントをグラフ化して対象ブロックの抽出例を説明するための図である。 FIG. 2 is a block diagram illustrating a functional configuration example of the web page analyzing apparatus 30 according to the present embodiment. FIG. 3 is a diagram illustrating an example of a web page to be analyzed by the web page analyzing apparatus according to the present embodiment. FIG. 4 is a diagram showing an example of the structured document (HTML document) of the web page shown in FIG. FIG. 5 is a diagram showing points for each line of the HTML document shown in FIG. FIG. 6 is a diagram for explaining an extraction example of the target block by graphing the points shown in FIG.
 以下、これらの図2~図6を用いて、本実施形態によるウェブページ解析装置30の機能構成について説明する。なお、図3および図4は、ウェブページの一例として、ECサイトのウェブページおよびそのHTML文書を示している。また、図5および図6は、図3および図4に示すウェブページの解析例を示している。 Hereinafter, the functional configuration of the web page analyzing apparatus 30 according to the present embodiment will be described with reference to FIGS. 2 to 6. 3 and 4 show a web page of an EC site and its HTML document as an example of the web page. 5 and 6 show analysis examples of the web page shown in FIGS. 3 and 4.
 図2に示すように、本実施形態のウェブページ解析装置30は、その機能構成として、上述したキーワード設定部32およびキーワード記憶部33の他に、深さポイント付与部34、キーワードポイント付与部35、ブロック抽出部36、情報抽出部37およびフィルタリング部38を備えている。なお、深さポイント付与部34、キーワードポイント付与部35、ブロック抽出部36、情報抽出部37およびフィルタリング部38により図1の解析処理部31が構成される。 As shown in FIG. 2, the web page analysis apparatus 30 of the present embodiment has a depth point assigning unit 34 and a keyword point assigning unit 35 in addition to the keyword setting unit 32 and the keyword storage unit 33 described above as the functional configuration. A block extracting unit 36, an information extracting unit 37, and a filtering unit 38. 1 is configured by the depth point assigning unit 34, the keyword point assigning unit 35, the block extracting unit 36, the information extracting unit 37, and the filtering unit 38.
 本実施形態のウェブページ解析装置30は、実際には各種演算処理を実行するCPU、ウェブページ解析用プログラムを格納するROM、データ格納やプログラム実行のためのワークエリアとして利用されるRAMおよびハードディスクを有し、ROMに格納されたウェブページ解析用プログラムに従ってCPUが動作することにより、各機能ブロック32~38による処理を実行する。 The web page analysis device 30 of the present embodiment actually includes a CPU that executes various arithmetic processes, a ROM that stores a web page analysis program, a RAM that is used as a work area for data storage and program execution, and a hard disk. And the CPU operates according to the web page analysis program stored in the ROM, thereby executing processing by the functional blocks 32 to 38.
 ウェブページ解析用プログラムを記憶する記録媒体として、ROMの代わりに、CD-ROM、フレキシブルディスク、ハードディスク、磁気テープ、光ディスク、光磁気ディスク、DVD、不揮発性メモリカード等を用いることができる。また、ウェブページ解析用プログラムをインターネット等のネットワークを介してコンピュータにダウンロードするようにしてもよい。 As a recording medium for storing the web page analysis program, a CD-ROM, a flexible disk, a hard disk, a magnetic tape, an optical disk, a magneto-optical disk, a DVD, a nonvolatile memory card, or the like can be used instead of the ROM. Further, the web page analysis program may be downloaded to a computer via a network such as the Internet.
 深さポイント付与部34は、ウェブページ記憶部20に記憶されたウェブページのうち、解析対象とされたウェブページを構成している構造化文書(HTML文書)のタグの階層構造を解析し、ルートからの深さに応じた深さポイントを構造化文書の行ごとに付与する。 The depth point assigning unit 34 analyzes the hierarchical structure of the tags of the structured document (HTML document) constituting the web page to be analyzed among the web pages stored in the web page storage unit 20. A depth point corresponding to the depth from the root is assigned to each line of the structured document.
 通常、HTMLは、“<”および“>”の記号によって囲まれたタグと呼ばれる命令文を用いて、ウェブページ上に色々な表現をすることができるようになっている。タグには、命令の開始場所であることを示す開始タグと、命令の終了場所であることを示す終了タグとがある。原則として、開始タグは、“<”と“>”と命令文との組み合わせによって表記される。一方、終了タグは、“</”と“>”と命令文との組み合わせによって表記される。 Usually, HTML can express various things on a web page by using a command sentence called a tag surrounded by “<” and “>” symbols. The tag includes a start tag indicating the start location of the instruction and an end tag indicating the end location of the instruction. In principle, the start tag is represented by a combination of “<” and “>” and a command statement. On the other hand, the end tag is represented by a combination of “</”, “>” and a command statement.
 また、HTML文書はタグによってツリー構造の形をとっている。通常、<html>タグの下階層(子階層)には<head>タグと<body>タグとがあり、<body>タグの下階層においてウェブページの内容に応じたツリー構造が展開される。1つの命令文に関する開始タグおよび終了タグは必ず同じ階層になるが、当該開始タグと終了タグとの間に別の命令文のタグが挿入されると、当該別の命令文のタグについては階層が1つ下がる。 Also, HTML documents take the form of a tree structure with tags. Usually, there are a <head> tag and a <body> tag in the lower hierarchy (child hierarchy) of the <html> tag, and a tree structure corresponding to the contents of the web page is expanded in the lower hierarchy of the <body> tag. The start tag and end tag for one command statement are always in the same level, but if another command tag is inserted between the start tag and the end tag, the tag for the other command statement is hierarchical. Goes down by one.
 例えば、図3に示すウェブページを記述した図4のHTML文書の例において、1行目の“<html>”は開始タグ、それに対応する終了タグは最終行にある“</html>”であり、この2つのタグは第1階層(ルート階層)に属する。また、2行目の“<head>”は開始タグ、それに対応する終了タグは6行目にある“</head>”であり、この2つのタグは第2階層に属する。 For example, in the example of the HTML document of FIG. 4 describing the web page shown in FIG. 3, “<html>” on the first line is a start tag and the corresponding end tag is “</ html>” on the last line. Yes, these two tags belong to the first hierarchy (root hierarchy). Also, “<head>” in the second line is a start tag, and the corresponding end tag is “</ head>” in the sixth line. These two tags belong to the second layer.
 上述したように、深さポイント付与部34は、HTML文書のルートからの階層の深さに応じた深さポイントを行ごとに付与する。なお、本実施形態において「行ごと」というのは、「開始タグごと」ということと同義である。すなわち、HTML文書の表記において見かけ上は複数の開始タグが同じ行に存在していても、開始タグごとに行が変わったとみなして深さポイントを付与する。また、HTML文書において1つの命令文に関する開始タグおよび終了タグは必ず同じ階層になるので、開始タグの行に対して深さポイントを付与すれば十分である。 As described above, the depth point assigning unit 34 assigns a depth point for each row according to the depth of the hierarchy from the root of the HTML document. In the present embodiment, “every row” is synonymous with “every start tag”. That is, in appearance of an HTML document, even if a plurality of start tags are apparently present on the same line, it is assumed that the line has changed for each start tag, and a depth point is given. In addition, since the start tag and the end tag related to one command statement are always in the same hierarchy in the HTML document, it is sufficient to give a depth point to the line of the start tag.
 例えば、図4の例において、1行目の<html>タグは第1階層であるから、深さポイントは“1”である(図5参照。以下同様)。また、2行目の<head>タグは第2階層であるから、深さポイントは“2”である。さらに、第3行目の<meta>タグ、第4行目の<link>タグ、第5行目の<title>タグについては何れも深さポイントは“3”である。次の6行目にある“</head>”は終了タグであるから第2階層に上がる。そのため、7行目の<body>タグは第2階層となり、深さポイントは“2”である。 For example, in the example of FIG. 4, since the <html> tag in the first row is the first layer, the depth point is “1” (see FIG. 5; the same applies hereinafter). Further, since the <head> tag on the second line is the second layer, the depth point is “2”. Further, the depth point of the <meta> tag on the third line, the <link> tag on the fourth line, and the <title> tag on the fifth line are all “3”. “</ Head>” in the next 6th line is an end tag, so it goes up to the second layer. Therefore, the <body> tag on the seventh line is the second layer, and the depth point is “2”.
 キーワードポイント付与部35は、HTML文書の中でキーワードが含まれる行については当該キーワードに応じたキーワードポイントを深さポイントに加算する。ここで使用するキーワードおよびそれに対応するキーワードポイントは、キーワード設定部32により設定されキーワード記憶部33に記憶されたものである。 The keyword point giving unit 35 adds a keyword point corresponding to the keyword to the depth point for a line including the keyword in the HTML document. The keywords used here and the corresponding keyword points are set by the keyword setting unit 32 and stored in the keyword storage unit 33.
 上述したように、キーワード記憶部33に記憶されるキーワードは、最初は操作部50の操作を通じてユーザにより入力されたものだけであるが、繰り返しの学習によって徐々に追加されていく。また、キーワード記憶部33に記憶されるキーワードポイントの値は、複数のウェブページの解析が進むにつれて随時更新される。 As described above, the keywords stored in the keyword storage unit 33 are initially only input by the user through the operation of the operation unit 50, but are gradually added by repeated learning. Further, the value of the keyword point stored in the keyword storage unit 33 is updated as needed as the analysis of a plurality of web pages proceeds.
 図4および図5の例では、24行目の<span>タグが属する第6階層に記述された「特価」というキーワードが学習によって追加設定されており、この「特価」というキーワードに対してキーワードポイントとして“2.31”が設定されている。そのため、キーワードポイント付与部35は、「特価」というキーワードに対して設定されているキーワードポイント“2.31”を<span>タグの深さポイント“6”に加算することによって、<span>タグがある24行目のポイントを“8.31”としている。 In the example of FIGS. 4 and 5, the keyword “special price” described in the sixth layer to which the <span> tag on the 24th line belongs is additionally set by learning. “2.31” is set as the point. For this reason, the keyword point giving unit 35 adds the keyword point “2.31” set for the keyword “special price” to the depth point “6” of the <span> tag, so that the <span> tag The point on the 24th line is “8.31”.
 また、図4および図5の例では、28行目の<input>タグが属する第7階層に記述された「カート」というキーワードも学習によって追加設定されており、この「カート」というキーワードに対してキーワードポイントとして“2.02”が設定されている。そのため、キーワードポイント付与部35は、「カート」というキーワードに対して設定されているキーワードポイント“2.02”を<input>タグの深さポイント“7”に加算することによって、<input>タグがある28行目のポイントを“9.02”としている。 In the example of FIGS. 4 and 5, the keyword “cart” described in the seventh layer to which the <input> tag on the 28th line belongs is additionally set by learning, and for this keyword “cart” As a keyword point, “2.02” is set. For this reason, the keyword point giving unit 35 adds the keyword point “2.02” set for the keyword “cart” to the depth point “7” of the <input> tag, so that the <input> tag The point on the 28th line is “9.02”.
 なお、キーワード設定部32が設定してキーワード記憶部33に記憶させるキーワードポイントの計算方法については後述する。 A keyword point calculation method set by the keyword setting unit 32 and stored in the keyword storage unit 33 will be described later.
 ブロック抽出部36は、キーワードポイントが加算されて深さポイントとの差分が生じている行(図4の例では、「特価」のキーワードが含まれる<span>タグの24行目および「カート」のキーワードが含まれる<input>タグの28行目)を含む所定範囲の行の集合を、所望の情報やキーワードを抽出する対象とすべきブロック(対象ブロックという)として抽出する。対象ブロックは、所望の情報が含まれている可能性が高い範囲を規定したものである。 The block extraction unit 36 adds the keyword points and produces a difference from the depth points (in the example of FIG. 4, the 24th line of the <span> tag including the keyword “special price” and “cart”). A set of rows in a predetermined range including the <input> tag in the <input> tag in which the keyword is included) is extracted as a block (referred to as a target block) from which desired information and keywords are to be extracted. The target block defines a range in which there is a high possibility that desired information is included.
 対象ブロックを規定する所定範囲の終点は、上記差分が生じている行よりも後の行で、キーワードポイントが加算されておらず且つ深さポイントが極小となっている最初の行とする。また、所定範囲の始点は、上記差分が生じている行よりも前の行で、終点と同じ値で深さポイントが極小となっている行とする。 The end point of the predetermined range that defines the target block is the first line where the keyword points are not added and the depth point is minimal, after the line where the difference occurs. The start point of the predetermined range is a line before the line where the difference occurs, and is the line having the same value as the end point and the minimum depth point.
 ここで、対象ブロックの始点および終点について、図6に示すグラフを参照して説明する。なお、図6は、図4に示すHTML文書の各行に対して付与されたポイント(図5に示す深さポイントおよびこれとキーワードポイントとの加算結果)を単純に折れ線グラフにしたものであり、横軸は行数、縦軸はポイントの値を示している。 Here, the start point and end point of the target block will be described with reference to the graph shown in FIG. Note that FIG. 6 is a simple line graph of the points given to each line of the HTML document shown in FIG. 4 (the depth points shown in FIG. 5 and the result of adding this to the keyword points). The horizontal axis indicates the number of rows, and the vertical axis indicates the point value.
 図6において、破線の折れ線グラフ61が深さポイントをグラフ化したものであり、実線の折れ線グラフ62が深さポイントとキーワードポイントとの加算結果をグラフ化したものである。また、破線の四角で囲んだ範囲が対象ブロック63である。また、この対象ブロック63の対応箇所を図3に示すウェブページ上で示すと、破線の四角で囲んだ範囲63’が該当する。 In FIG. 6, a broken line graph 61 is a graph of depth points, and a solid line graph 62 is a graph of the addition results of depth points and keyword points. A range surrounded by a broken-line square is the target block 63. Further, when the corresponding portion of the target block 63 is shown on the web page shown in FIG. 3, a range 63 ′ surrounded by a broken-line square corresponds to the target block 63.
 図6に示すように、24行目と28行目でグラフの値に差分が生じている。そこで、ブロック抽出部36は、28行目よりも後の行で、キーワードポイントが加算されておらず(すなわち、深さポイントとの差分が生じておらず)、且つ深さポイントが極小となっている最初の行を所定範囲の終点とする。図6の例では29行目が終点となる。この終点における深さポイントの値は“3”である。一方、ブロック抽出部36は、24行目よりも前の行で、終点と同じ値“3”で深さポイントが極小となっている行を所定範囲の始点とする。図6の例では15行目が始点となる。 As shown in FIG. 6, there is a difference in graph values between the 24th and 28th lines. Therefore, the block extraction unit 36 does not add keyword points in the line after the 28th line (that is, there is no difference from the depth point), and the depth point is minimized. The first line is the end point of the predetermined range. In the example of FIG. 6, the 29th line is the end point. The value of the depth point at this end point is “3”. On the other hand, the block extraction unit 36 sets the line preceding the 24th line and having the same value “3” as the end point and the minimum depth point as the start point of the predetermined range. In the example of FIG. 6, the 15th line is the starting point.
 情報抽出部37は、ブロック抽出部36により抽出された対象ブロック内から、所定の条件を満たす情報を抽出する。例えば、ユーザが操作部50の操作を通じて、ウェブページから抽出したい情報のタイプとして商品の価格情報を指定した場合、情報抽出部37は、所定の条件を満たす情報として、商品名および価格を抽出する。すなわち、情報抽出部37は、図3に示すECサイトのウェブページに設定された対象ブロック63内から商品名および価格を抽出する。 The information extraction unit 37 extracts information satisfying a predetermined condition from the target block extracted by the block extraction unit 36. For example, when the user specifies price information of a product as the type of information desired to be extracted from the web page through the operation of the operation unit 50, the information extraction unit 37 extracts the product name and price as information satisfying a predetermined condition. . That is, the information extraction unit 37 extracts the product name and price from the target block 63 set in the web page of the EC site shown in FIG.
 具体的には、情報抽出部37は、形態素解析によって商品名を抽出する。一般的に、商品名は未知語と名詞で構成されていることが多い。そこで、情報抽出部37は、商品名を含む文や単語を形態素解析して、形態素のうちの7割が未知語と名詞で占められていれば、それは商品名であると判断する。また、価格であれば、数値と,(カンマ)との羅列があり、その羅列の前または後に“¥”または“円”といった文字が含まれていることが多い。そこで、情報抽出部37は、こういった正規表現の条件を利用して価格を判別する。 Specifically, the information extraction unit 37 extracts a product name by morphological analysis. In general, product names are often composed of unknown words and nouns. Therefore, the information extraction unit 37 performs a morphological analysis on a sentence or a word including a product name, and determines that it is a product name if 70% of the morphemes are occupied by unknown words and nouns. In the case of a price, there are a list of numerical values and (comma), and characters such as “¥” or “yen” are often included before or after the list. Therefore, the information extraction unit 37 determines the price using such a regular expression condition.
 なお、情報タイプとして会社情報が指定されている場合、情報抽出部37は、所定の条件を満たす情報として、所在地、代表者氏名、資本金、電話番号、従業員数、設立年月日などの情報を抽出する。例えば、情報抽出部37は、形態素解析をして地名と数値との組み合わせから成る部分を所在地であると判断する。また、数字と()または-との組み合わせから成る部分を電話番号であると判断する。また、数値と,(カンマ)との羅列があり、その羅列の近くに資本金という文字列がある場合はその数値が資本金であると判断する。他の情報についても、形態素解析や正規表現の条件、近くに存在する文字列の条件により判別する。 In addition, when company information is specified as the information type, the information extraction unit 37 includes information such as the location, representative name, capital, telephone number, number of employees, date of establishment, etc. as information that satisfies a predetermined condition. To extract. For example, the information extraction unit 37 performs morphological analysis and determines that a part formed by a combination of a place name and a numerical value is a location. Further, it is determined that a part consisting of a combination of a number and () or-is a telephone number. If there is a list of numbers and (comma) and there is a character string of capital near the list, it is determined that the number is capital. Other information is also determined by morphological analysis, regular expression conditions, and nearby character string conditions.
 また、情報タイプとして求人情報が指定されている場合、情報抽出部37は、所定の条件を満たす情報として、勤務時間、給与、手当、勤務地などの情報を抽出する。これらの情報を抽出する際にも、情報抽出部37は、形態素解析や正規表現の条件、近くに存在する文字列の条件により所望の情報か否かを判別する。 In addition, when job offer information is specified as the information type, the information extraction unit 37 extracts information such as work hours, salary, allowance, and work location as information that satisfies a predetermined condition. When extracting these pieces of information, the information extraction unit 37 determines whether the information is desired information based on the morphological analysis, the regular expression condition, and the condition of the character string existing nearby.
 フィルタリング部38は、情報抽出部37により対象ブロック内から抽出された情報について、情報タイプに応じてあらかじめ定めた1以上の種類の情報が揃っているか否かを判定し、揃っている場合にのみ、対象ブロック内から抽出された情報を表示部40に出力する。例えば、ユーザの指定した情報タイプが商品の価格情報である場合、フィルタリング部38は、商品名と価格の2つが揃っているか否かを判定する。対象ブロック内から抽出された情報がどちらか一方だけの場合は、フィルタリング部38はその情報を表示部40に出力しない。 The filtering unit 38 determines whether or not one or more types of information determined in advance according to the information type are prepared for the information extracted from the target block by the information extracting unit 37, and only when they are prepared. The information extracted from the target block is output to the display unit 40. For example, when the information type designated by the user is price information of a product, the filtering unit 38 determines whether or not both a product name and a price are available. If only one of the information extracted from the target block is present, the filtering unit 38 does not output the information to the display unit 40.
 なお、情報タイプとして会社情報が指定されている場合、フィルタリング部38は、例えば、所在地、代表者氏名および資本金の3つが揃っているか否かを判定する。また、情報タイプとして求人情報が指定されている場合、情報抽出部37は、例えば、給与、手当および勤務地の3つが揃っているか否かを判定する。そして、対象ブロック内から抽出された情報が3つとも揃っていない場合は、フィルタリング部38はその情報を表示部40に出力しない。 If company information is specified as the information type, the filtering unit 38 determines whether, for example, the location, representative name, and capital are all available. When job offer information is specified as the information type, the information extraction unit 37 determines whether, for example, three of salary, allowance, and work location are available. If all three pieces of information extracted from the target block are not prepared, the filtering unit 38 does not output the information to the display unit 40.
 ここで、キーワード設定部32によるキーワードポイントの計算方法について説明する。上述のように、キーワード設定部32は、ウェブページ記憶部20に記憶されたウェブページの解析を開始する前の最初の段階では、操作部50の操作を通じてユーザにより入力された単語をキーワードとして設定し、キーワード記憶部33に記憶する。また、キーワード設定部32は、ウェブページの解析処理の過程において、ブロック抽出部36により抽出された対象ブロックの中に含まれる単語を抽出してキーワードとして追加設定し、キーワード記憶部33に記憶する。 Here, a method for calculating keyword points by the keyword setting unit 32 will be described. As described above, the keyword setting unit 32 sets, as a keyword, a word input by the user through the operation of the operation unit 50 in the first stage before starting the analysis of the web page stored in the web page storage unit 20. And stored in the keyword storage unit 33. In addition, the keyword setting unit 32 extracts a word included in the target block extracted by the block extraction unit 36 in the course of the web page analysis process, additionally sets it as a keyword, and stores it in the keyword storage unit 33. .
 例えば、商品の価格情報が情報タイプとして指定されている場合、キーワード設定部32は、対象ブロック内に含まれている商品名や価格以外の単語を対象ブロック内から抽出し、新しいキーワードとしてキーワード記憶部33に追加設定する。ここで、対象ブロック内に含まれている商品名および価格の情報については、その情報を抽出した情報抽出部37からキーワード設定部32が通知を受ける。キーワード設定部32は、この通知を受けて把握した商品名や価格以外の単語を対象ブロック内から抽出する。 For example, when the price information of the product is specified as the information type, the keyword setting unit 32 extracts words other than the product name and price included in the target block from the target block, and stores the keyword as a new keyword. Additional setting is made in the section 33. Here, for the product name and price information included in the target block, the keyword setting unit 32 receives a notification from the information extraction unit 37 that extracted the information. The keyword setting unit 32 extracts words other than the product name and price grasped by receiving this notification from the target block.
 また、キーワード設定部32は、既存のキーワードおよび新たに設定したキーワードを含めて、キーワード記憶部33に記憶されているキーワードに対応するキーワードポイントを計算して記憶する。例えば、キーワード設定部32は、解析対象とされたウェブページからブロック抽出部36により抽出された対象ブロックの総数と、キーワードとして設定された単語の出現数とを用い、対象ブロックの総数に対する単語の出現数の割合に応じた値を計算してキーワードポイントとして設定する。 Also, the keyword setting unit 32 calculates and stores keyword points corresponding to the keywords stored in the keyword storage unit 33, including existing keywords and newly set keywords. For example, the keyword setting unit 32 uses the total number of target blocks extracted by the block extraction unit 36 from the web page to be analyzed and the number of appearances of words set as a keyword, and the number of words relative to the total number of target blocks. A value corresponding to the ratio of the number of appearances is calculated and set as a keyword point.
 以下に、この計算方法をもう少し詳しく説明する。すなわち、ブロック抽出部36によって、1つのウェブページから0個または1個以上の対象ブロックが抽出される。複数のウェブページを解析すれば、ブロック抽出部36により複数のウェブページから総数でN個の対象ブロックが抽出され得る。そして、キーワード設定部32によって、当該N個の対象ブロック内から様々な単語がキーワードとして抽出される。このとき、同じ単語が1個または複数の対象ブロックからM回抽出され得る。この場合、キーワード設定部32は、M/Nの値を計算してキーワードポイントとして設定する。 Below, this calculation method will be explained in a little more detail. That is, the block extraction unit 36 extracts zero or one or more target blocks from one web page. If a plurality of web pages are analyzed, the block extraction unit 36 can extract a total of N target blocks from the plurality of web pages. Then, the keyword setting unit 32 extracts various words as keywords from the N target blocks. At this time, the same word can be extracted M times from one or more target blocks. In this case, the keyword setting unit 32 calculates the value of M / N and sets it as a keyword point.
 これにより、単語の出現数Mが多くなるほど、その単語に与えられるキーワードポイントは大きな値となる。また、単語の出現数Mが同じであれば、対象ブロックの総数Nが少ないほど、キーワードポイントは大きな値となる。本実施形態では、商品名や価格が含まれる可能性が高い対象ブロックをキーワードポイントと深さポイントとに基づいて特定し、その対象ブロック内から商品名や価格以外の新たな単語をキーワードとして抽出する仕組みとしている。そのため、商品名や価格と近い距離に置かれることが多い単語については出現数Mが多くなり、キーワードポイントも大きくなる傾向となる。 Thus, as the number of occurrences M of the word increases, the keyword points given to the word become larger. Further, if the number M of appearances of the words is the same, the smaller the total number N of target blocks, the larger the keyword points. In this embodiment, target blocks that are likely to contain product names and prices are identified based on keyword points and depth points, and new words other than product names and prices are extracted from the target blocks as keywords. It is a mechanism to do. For this reason, the number of appearances M increases and the keyword points tend to increase for words that are often placed close to product names and prices.
 図3に示したECサイトのウェブページの例では、商品名や価格と近い距離に置かれることが多い単語の一例として、「特価」という単語に対して2.31ポイント、「カート」という単語に対して2.02ポイントがキーワードポイントとして与えられている。 In the example of the web page of the EC site shown in FIG. 3, as an example of a word that is often placed at a distance close to a product name or price, 2.31 points for the word “special price” and the word “cart” 2.02 points are given as keyword points.
 ただし、これはある時点において設定されたキーワードポイントの値である。複数のウェブページの解析を進めていくと、複数のウェブページから抽出される対象ブロックの総数Nおよび対象ブロック内から抽出される単語の出現数Mは変動する。よって、キーワードポイントも絶えず変動する。そこで、キーワード設定部32は、キーワードとして抽出した単語に対して、その出現数Mと、抽出した対象ブロックの総数Nとを関連付けて記憶しておき、キーワードポイントの計算に使用する。 However, this is the keyword point value set at a certain point in time. As analysis of a plurality of web pages proceeds, the total number N of target blocks extracted from the plurality of web pages and the number M of appearances of words extracted from within the target blocks change. Thus, the keyword points also change constantly. Therefore, the keyword setting unit 32 stores the number of appearances M and the total number N of the extracted target blocks in association with each word extracted as a keyword, and uses them for calculating keyword points.
 そして、キーワード設定部32は、計算したキーワードポイントを、キーワードに関連付けてキーワード記憶部33に記憶する。ここで、新しく設定されたキーワードについては、新規に計算されたキーワードポイントをキーワード記憶部33に記憶する。既存のキーワードについては、再計算されたキーワードポイントをキーワード記憶部33に更新して記憶する。 The keyword setting unit 32 stores the calculated keyword points in the keyword storage unit 33 in association with the keywords. Here, for newly set keywords, the newly calculated keyword points are stored in the keyword storage unit 33. For existing keywords, the recalculated keyword points are updated and stored in the keyword storage unit 33.
 次に、上記のように構成した本実施形態によるウェブページ解析装置30の動作を説明する。図7は、本実施形態によるウェブページ解析装置30の動作例を示すフローチャートである。図7に示すフローチャートは、ユーザが操作部50を操作してウェブページ解析の指示をウェブページ解析装置30に与えたときに開始する。なお、図7に示すフローチャートの開始時点において、ウェブページ記憶部20には複数のウェブページが既に記憶されているものとする。 Next, the operation of the web page analyzing apparatus 30 according to the present embodiment configured as described above will be described. FIG. 7 is a flowchart showing an operation example of the web page analyzing apparatus 30 according to the present embodiment. The flowchart shown in FIG. 7 starts when the user operates the operation unit 50 to give a web page analysis instruction to the web page analysis device 30. It is assumed that a plurality of web pages are already stored in the web page storage unit 20 at the start of the flowchart shown in FIG.
 図7において、まずユーザが操作部50の操作を通じて、所望の情報としてどのような種類の情報を抽出したいのかを表す情報タイプを指定する(ステップS1)。ここでは一例として、商品の価格情報を情報タイプとして指定したとする。また、ユーザが操作部50の操作を通じて、指定した情報タイプとの関連性があると思われる単語をキーワードとして入力する(ステップS2)。ここでは、「税込」という単語を入力したとする。キーワード設定部32は、入力された単語をキーワードとして設定し、キーワード記憶部33に記憶する。 In FIG. 7, first, the user designates an information type indicating what kind of information is desired to be extracted as desired information through the operation of the operation unit 50 (step S1). Here, as an example, it is assumed that product price information is specified as an information type. Further, a word that is considered to be related to the designated information type is input as a keyword by the user through the operation of the operation unit 50 (step S2). Here, it is assumed that the word “tax included” is input. The keyword setting unit 32 sets the input word as a keyword and stores it in the keyword storage unit 33.
 次に、深さポイント付与部34は、ウェブページ記憶部20に記憶されている複数のウェブページの中から何れか1つを取得し(ステップS3)、そのウェブページ中にキーワード(今の場合は「税込」)が含まれているか否かを判定する(ステップS4)。キーワードが含まれていなければ、処理はステップS13に進む。これにより、キーワードが全く含まれていないウェブページについては、解析対象から外されることとなる。 Next, the depth point assigning unit 34 acquires any one of the plurality of web pages stored in the web page storage unit 20 (step S3), and includes a keyword (in this case) in the web page. ("Tax included") is included (step S4). If no keyword is included, the process proceeds to step S13. As a result, web pages that do not contain any keywords are excluded from the analysis target.
 一方、ウェブページの中にキーワードが含まれている場合は、以下に説明する解析処理を実行する。すなわち、まず深さポイント付与部34は、現在解析対象とされているウェブページを構成しているHTML文書のタグの階層構造を解析し、ルートからの深さに応じた深さポイントを行ごとに付与する(ステップS5)。 On the other hand, when a keyword is included in the web page, an analysis process described below is executed. That is, first, the depth point assigning unit 34 analyzes the hierarchical structure of the tags of the HTML document constituting the web page currently being analyzed, and calculates the depth point corresponding to the depth from the root for each row. (Step S5).
 さらに、キーワードポイント付与部35は、キーワード記憶部33に記憶されているキーワードおよびそれに対応するキーワードポイントに基づいて、HTML文書の中でキーワードが含まれる行について、当該キーワードに応じたキーワードポイントを深さポイントに加算する(ステップS6)。1つ目のウェブページの解析では、「税込」というキーワードが含まれる行について、当該キーワードに応じたキーワードポイント(例えば、所定の値)を深さポイントに加算する。 Further, the keyword point assigning unit 35 deepens the keyword point corresponding to the keyword in a line including the keyword in the HTML document based on the keyword stored in the keyword storage unit 33 and the corresponding keyword point. Is added to the point (step S6). In the analysis of the first web page, a keyword point (for example, a predetermined value) corresponding to the keyword is added to the depth point for a line including the keyword “tax included”.
 次に、ブロック抽出部36は、深さポイントおよびキーワードポイントに基づいて、現在解析対象としているウェブページ内から対象ブロックを抽出する(ステップS7)。ここで、ブロック抽出部36は、キーワードポイントが加算されて深さポイントとの差分が生じている行を含み、その行よりも前および後の行でキーワードポイントが加算されておらず且つ深さポイントが極小となっている行を始点および終点とする所定範囲を対象ブロックとして抽出する。 Next, the block extraction unit 36 extracts a target block from the web page currently being analyzed based on the depth point and the keyword point (step S7). Here, the block extraction unit 36 includes a line in which a difference from the depth point is generated by adding the keyword points, and the keyword points are not added in the lines before and after the line and the depth is increased. A predetermined range having a start point and an end point at a line having a minimum point is extracted as a target block.
 次に、情報抽出部37は、ブロック抽出部36により抽出された対象ブロック内から、所定の条件を満たす所望の情報を抽出する(ステップS8)。ここでは、情報タイプとして商品の価格情報が指定されているので、情報抽出部37は、所定の条件を満たす所望の情報として、商品名および価格を対象ブロック内から抽出する。 Next, the information extraction unit 37 extracts desired information satisfying a predetermined condition from the target block extracted by the block extraction unit 36 (step S8). Here, since the price information of the product is specified as the information type, the information extraction unit 37 extracts the product name and price from the target block as desired information that satisfies a predetermined condition.
 そして、フィルタリング部38は、情報抽出部37により対象ブロック内から抽出された所望の情報について、情報タイプに応じてあらかじめ定めた1以上の種類の情報が揃っているか否かを判定する(ステップS9)。ここでは、商品の価格情報という情報タイプに応じてあらかじめ定められた商品名と価格の2つが揃っているか否かを判定する。 Then, the filtering unit 38 determines whether or not one or more types of information predetermined according to the information type are available for the desired information extracted from the target block by the information extracting unit 37 (step S9). ). Here, it is determined whether or not two of a predetermined product name and price according to the information type of product price information are available.
 ここで、対象ブロック内から抽出された所望の情報として、必要な情報が揃っていない場合は、処理はステップS13に進む。一方、必要な情報が揃っている場合は、フィルタリング部38は、対象ブロック内から抽出された所望の情報(商品名と価格)を表示部40に出力する(ステップS10)。 Here, when necessary information is not prepared as desired information extracted from the target block, the process proceeds to step S13. On the other hand, if the necessary information is available, the filtering unit 38 outputs the desired information (product name and price) extracted from the target block to the display unit 40 (step S10).
 その後、キーワード設定部32は、ブロック抽出部36により抽出された対象ブロックの中に含まれる単語(商品名および価格以外の単語)を抽出してキーワードとして追加設定し、キーワード記憶部33に記憶する(ステップS11)。また、キーワード設定部32は、新たに設定したキーワードを含めて、キーワード記憶部33に記憶されているキーワードに対応するキーワードポイントを計算し、キーワード記憶部33に記憶する(ステップS12)。 Thereafter, the keyword setting unit 32 extracts words (words other than the product name and price) included in the target block extracted by the block extraction unit 36, additionally sets them as keywords, and stores them in the keyword storage unit 33. (Step S11). The keyword setting unit 32 calculates keyword points corresponding to the keywords stored in the keyword storage unit 33 including the newly set keywords, and stores the keyword points in the keyword storage unit 33 (step S12).
 最後に、深さポイント付与部34は、ウェブページ記憶部20に記憶されている複数のウェブページを全て処理し終えたか否かを判定する(ステップS13)。全てのウェブページについて処理が終了した場合、図7に示すフローチャートの処理は終了する。一方、全てのウェブページについて処理がまだ終了していない場合は、ステップS3に戻り、別のウェブページを取得して以上と同様の処理を繰り返す。 Finally, the depth point assigning unit 34 determines whether or not all the plurality of web pages stored in the web page storage unit 20 have been processed (step S13). When the process is completed for all web pages, the process of the flowchart illustrated in FIG. 7 is terminated. On the other hand, if the processing has not been completed for all the web pages, the process returns to step S3, another web page is acquired, and the same processing as described above is repeated.
 ステップS3に戻って別のウェブページを取得する前に、ステップS11,S12で新たなキーワードが追加設定されていた場合は、ユーザが入力した「税込」というキーワードが当該別のウェブページ中に含まれていなくても、追加設定されたキーワードが当該別のウェブページ中に含まれていれば、その別のウェブページは所望の情報の抽出処理(ステップS5~S10)およびキーワードの学習処理(ステップS11~S12)の対象とされる。 If a new keyword is additionally set in steps S11 and S12 before returning to step S3 to acquire another web page, the keyword “tax included” entered by the user is included in the other web page. If the additional set keyword is included in the other web page, the other web page extracts the desired information (steps S5 to S10) and the keyword learning process (step S11 to S12).
 なお、図7に示すフローチャートでは、ウェブページ記憶部20に記憶されている複数のウェブページの処理が一巡したところで処理を終了するようにしているが、本発明はこの例に限定されない。例えば、自動的に、あるいはユーザによる操作部50の操作を通じて、ウェブページ記憶部20に記憶されている複数のウェブページの処理を複数回行うようにしてもよい。 In the flowchart shown in FIG. 7, the processing is terminated when the processing of the plurality of web pages stored in the web page storage unit 20 is completed, but the present invention is not limited to this example. For example, the processing of a plurality of web pages stored in the web page storage unit 20 may be performed a plurality of times automatically or through the operation of the operation unit 50 by the user.
 上述のように、複数のウェブページの解析処理を進めていくうちに、キーワードが学習効果によって徐々に増えていく。よって、一巡目で解析処理の対象とされなかった(ステップS4でキーワードが含まれないと判断された)ウェブページも、二巡目以降では解析処理の対象とされる可能性もある。これにより、より多くのウェブページから所望の情報を抽出できる可能性が高くなるというメリットがある。なお、二巡目以降では、一度も解析処理の対象とされていないウェブページだけに絞って解析を行うようにすれば、処理効率を上げることもできる。 As described above, as the analysis processing of a plurality of web pages proceeds, keywords gradually increase due to the learning effect. Therefore, a web page that has not been subjected to analysis processing in the first round (determined that no keyword is included in step S4) may be subject to analysis processing in the second and subsequent rounds. As a result, there is an advantage that the possibility that desired information can be extracted from more web pages is increased. In the second and subsequent rounds, if the analysis is performed only on web pages that have not been subjected to analysis processing, the processing efficiency can be improved.
 以上詳しく説明したように、本実施形態では、ウェブページを構成しているHTML文書のタグの階層構造を解析し、ルートからの深さに応じた深さポイントを行ごとに付与するとともに、キーワードが含まれる行については当該キーワードに応じたキーワードポイントを深さポイントに加算する。そして、深さポイントとキーワードポイントとに基づいて、キーワードが含まれている行を含む前後の所定範囲を対象ブロックとして抽出し、抽出した対象ブロック内から所定の条件を満たす情報(例えば、商品名および価格)を抽出するようにしている。 As described above in detail, in this embodiment, the hierarchical structure of the tags of the HTML document constituting the web page is analyzed, and a depth point corresponding to the depth from the root is given for each line, and the keyword For a line including, a keyword point corresponding to the keyword is added to the depth point. Based on the depth point and the keyword point, a predetermined range before and after the line including the keyword is extracted as a target block, and information satisfying a predetermined condition from the extracted target block (for example, a product name) And price).
 このように構成した本実施形態によれば、ウェブページを構成しているHTML文書において、キーワードが含まれている行から近い距離にある所定範囲の行の集合が対象ブロックとして抽出され、当該対象ブロック内から所定の条件を満たす所望の情報が抽出される。例えば、形態素解析や正規表現を利用した所定の条件を満たす所望の情報として、商品名および価格が抽出される。 According to the present embodiment configured as described above, in the HTML document constituting the web page, a set of rows within a predetermined range at a short distance from the row including the keyword is extracted as a target block, and the target Desired information satisfying a predetermined condition is extracted from the block. For example, a product name and a price are extracted as desired information that satisfies a predetermined condition using morphological analysis or regular expressions.
 したがって、情報タイプ(商品の価格情報、会社情報、求人情報など)に応じて所望の情報を抽出するために必要な条件を所定の条件として設定しておけば、キーワードから近い距離に掲載されることが多い所望の情報をウェブページから自動的に抽出することができる。これにより、インターネット上のウェブサイトにある多くのウェブページから所望の情報を効率的に抽出することができる。 Therefore, if the conditions necessary for extracting desired information according to the information type (product price information, company information, job offer information, etc.) are set as predetermined conditions, they are posted at a distance close to the keyword. Often desired information can be automatically extracted from a web page. Thereby, desired information can be efficiently extracted from many web pages on a website on the Internet.
 また、本実施形態では、ブロック抽出部36を設け、単に所定の条件を満たす情報をウェブページから抽出するのではなく、ウェブページの中から対象ブロックを抽出し、当該対象ブロックの中だけから所定の条件を満たす情報を抽出している。そのため、例えば商品名と価格が1つのウェブページ内に存在していても、両者が構造的に遠い位置に配置されていて互いの関連性が乏しいものについては、所望の情報には該当しないとして抽出の対象から外すことができる。 In the present embodiment, the block extraction unit 36 is provided, and instead of simply extracting information satisfying a predetermined condition from the web page, the target block is extracted from the web page, and the predetermined block is extracted only from the target block. Information that satisfies the condition is extracted. Therefore, for example, even if the product name and price exist in one web page, those that are structurally distant from each other and poorly related to each other are not considered as the desired information. Can be excluded from extraction.
 ある1つの商品に関して商品名と価格を表記したものであれば、図3に示したように両者は近い距離に配置されるのが通常である。本実施形態では、このようなケースだけを対象として商品名と価格を抽出することができるので、所望の情報ではないノイズの抽出を少なくすることができる。 If a product name and price are described for one product, they are usually arranged at a short distance as shown in FIG. In the present embodiment, since the product name and price can be extracted only for such a case, extraction of noise that is not desired information can be reduced.
 また、本実施形態では、フィルタリング部38を設け、対象ブロック内から抽出される商品名や価格であっても、その両者が揃っていなければ所望の情報として出力しないようにしている。これにより、商品名と価格のどちらか一方だけがたまたま対象ブロック内に存在するケースについては、所望の情報には該当しないとして除外することができる。したがって、所望の情報ではないノイズの抽出をより少なくすることができる。 Further, in this embodiment, the filtering unit 38 is provided so that the product name and price extracted from the target block are not output as desired information unless both are available. Accordingly, a case where only one of the product name and the price happens to be in the target block can be excluded as not corresponding to the desired information. Therefore, it is possible to reduce the extraction of noise that is not desired information.
 また、本実施形態では、キーワード設定部32を設け、対象ブロックの抽出に使用するキーワードを学習によって可変設定できるようにしている。そして、可変設定するキーワードは、対象ブロック内から抽出するようにしている。つまり、本実施形態では、対象ブロック内に含まれる既存のキーワードや所望の情報から近い距離にある単語をキーワードとして追加設定できるようにしている。 Further, in the present embodiment, the keyword setting unit 32 is provided so that the keyword used for extracting the target block can be variably set by learning. The keyword to be variably set is extracted from the target block. That is, in the present embodiment, an existing keyword included in the target block or a word that is close to desired information can be additionally set as a keyword.
 キーワードを固定で使用すると、所望の情報の抽出精度が殆どのそのキーワードの良し悪しに依存してしまうことになる。これに対して、本実施形態によれば、最初は所定のキーワードを設定する必要があるものの、ウェブページの解析を進めるにつれて、所望の情報を抽出するために好ましい単語(実際にインターネット上に存在する複数のウェブページにおいて所望の情報の近くで使用されている単語)が順次キーワードとして追加設定されていく。これにより、所望の情報の抽出精度を上げることができる。 If a keyword is used in a fixed manner, the extraction accuracy of desired information will depend on the quality of most of the keyword. On the other hand, according to the present embodiment, it is necessary to set a predetermined keyword at first, but as the analysis of the web page proceeds, it is preferable to extract a desired word (which actually exists on the Internet). (Words used in the vicinity of desired information in a plurality of web pages) are sequentially added as keywords. Thereby, the extraction accuracy of desired information can be increased.
 なお、上記実施形態では、キーワードポイントの計算方法の一例として、対象ブロックの総数に対する単語の出現数の割合に応じた値を計算してキーワードポイントとして設定する例について説明したが、本発明はこれに限定されない。例えば、所望の情報から単語までの構造上の距離の大きさを更に加味してキーワードポイントを計算してもよい。具体的には、所望の情報からの構造上の距離が近い単語ほどキーワードポイントが大きくなるように係数を乗算するという方法が考えられる。ここで言う「構造上の距離」とは、例えば行数の差分としてもよいし、階層数の差分としてもよい。あるいは、階層のツリー構造を擬似的に家系図として見た場合の親等数の差分としてもよい。 In the above embodiment, as an example of a keyword point calculation method, an example has been described in which a value corresponding to the ratio of the number of words to the total number of target blocks is calculated and set as a keyword point. It is not limited to. For example, the keyword points may be calculated in consideration of the size of the structural distance from the desired information to the word. Specifically, a method is conceivable in which a word is multiplied by a coefficient so that a word having a shorter structural distance from the desired information has a larger keyword point. The “structural distance” referred to here may be, for example, a difference in the number of rows or a difference in the number of layers. Or it is good also as a difference of a close degree when the tree structure of a hierarchy is seen as a family tree in a pseudo manner.
 また、上記実施形態では、情報抽出部37により対象ブロックから抽出された情報について、情報タイプとして必要な情報が揃っている場合にのみキーワードの学習を行う例について説明したが、必要な情報が揃っていない場合にもキーワードの学習を行うようにしてもよい。ただし、必要な情報が揃っている場合にのみ所望の情報を出力するようにフィルタリング部38で制御しているので、キーワードの学習も必要な情報が揃っている場合にのみ行うのが好ましい。 In the above embodiment, the example in which the keyword is learned only when the information extracted from the target block by the information extraction unit 37 has the necessary information as the information type has been described. However, the necessary information is prepared. The keyword may be learned even when it is not. However, since the filtering unit 38 controls to output desired information only when necessary information is available, it is preferable to perform keyword learning only when necessary information is available.
 また、上記実施形態において、キーワード設定部32により計算されたキーワードポイントが閾値以下のときは、キーワードポイントを“0”とするようにしてもよい。キーワードとして設定された単語の出現頻度が極めて少なくてキーワードポイントが小さな値となる場合でも、それをそのまま設定しておくと、その単語が含まれる行に関しては、深さポイントとの差分が僅かではあるが存在することになる。 In the above embodiment, when the keyword point calculated by the keyword setting unit 32 is equal to or less than the threshold value, the keyword point may be set to “0”. Even if the occurrence frequency of a word set as a keyword is very low and the keyword point has a small value, if it is set as it is, the difference between the depth point and the line containing the word will be small. There will be.
 そのため、その僅かな差分しかない行を含む所定範囲も、対象ブロックの抽出対象となってしまう。この場合、その対象ブロック内には所望の情報が含まれていない可能性が高いため、抽出した対象ブロック自体がノイズとなってしまう可能性がある。これに対して、キーワードポイントが閾値以下のときは全て値を“0”に丸めるようにすれば、ノイズとなる対象ブロックの抽出を少なくすることができ、処理効率を上げることができる。 Therefore, a predetermined range including a line having only a slight difference is also an extraction target of the target block. In this case, since there is a high possibility that desired information is not included in the target block, the extracted target block itself may become noise. On the other hand, if the values are all rounded to “0” when the keyword points are equal to or less than the threshold value, the extraction of the target block that becomes noise can be reduced, and the processing efficiency can be improved.
 また、上記実施形態では、ブロック抽出部36による対象ブロックの抽出方法を一例として示したが、本発明はこれに限定されない。例えば、キーワードポイントが加算されて深さポイントとの差分が生じている行と、当該差分が生じている行から前の所定数の行と、当該差分が生じている行から後の所定数の行とを含む範囲を対象ブロックとして抽出するようにしてもよい。ただし、上記実施形態による抽出方法によれば、対象ブロックを過不足のない的確な範囲に絞って設定できる可能性が高くなるので、所望の情報の抽出漏れを低減しつつ処理効率を上げることができる。 In the above embodiment, the method of extracting the target block by the block extraction unit 36 is shown as an example, but the present invention is not limited to this. For example, a line where a difference from the depth point is generated by adding keyword points, a predetermined number of lines before the line where the difference is generated, and a predetermined number of lines after the line where the difference is generated A range including a line may be extracted as a target block. However, according to the extraction method according to the above embodiment, there is a high possibility that the target block can be set to an accurate range without excess or deficiency, so that it is possible to increase processing efficiency while reducing omission of extraction of desired information. it can.
 その他、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。 In addition, each of the above-described embodiments is merely an example of implementation in carrying out the present invention, and the technical scope of the present invention should not be construed in a limited manner. That is, the present invention can be implemented in various forms without departing from the gist or the main features thereof.

Claims (7)

  1. ウェブページを構成している構造化文書のタグの階層構造を解析し、ルートからの深さに応じた深さポイントを上記構造化文書の行ごとに付与する深さポイント付与部と、
     上記構造化文書の中でキーワードが含まれる行については当該キーワードに応じたキーワードポイントを上記深さポイントに加算するキーワードポイント付与部と、
     上記キーワードポイントが加算されて上記深さポイントとの差分が生じている行およびその前後の数行を含む所定範囲を対象ブロックとして抽出するブロック抽出部と、
     上記ブロック抽出部により抽出された対象ブロック内から、所定の条件を満たす情報を抽出する情報抽出部とを備えたことを特徴とするウェブページ解析装置。
    A depth point assigning unit that analyzes the hierarchical structure of the tags of the structured document constituting the web page and assigns a depth point corresponding to the depth from the root for each line of the structured document;
    For a line including a keyword in the structured document, a keyword point giving unit that adds a keyword point corresponding to the keyword to the depth point;
    A block extraction unit that extracts a predetermined range including a line in which the keyword point is added and a difference from the depth point is generated, and a few lines before and after the line, as a target block;
    An information extraction unit that extracts information satisfying a predetermined condition from the target block extracted by the block extraction unit.
  2. 上記ブロック抽出部は、上記キーワードポイントが加算されて上記深さポイントとの差分が生じている行を含み、当該差分が生じている行よりも後の行で上記キーワードポイントが加算されておらず且つ上記深さポイントが極小となっている最初の行を終点とし、上記差分が生じている行よりも前の行で上記終点と同じ値で深さポイントが極小となっている行を始点とする範囲を上記対象ブロックとして抽出することを特徴とする請求項1に記載のウェブページ解析装置。 The block extraction unit includes a line in which the keyword point is added and a difference from the depth point is generated, and the keyword point is not added in a line after the line in which the difference is generated And the first line where the depth point is minimum is the end point, the line before the difference is the same value as the end point and the line where the depth point is minimum is the start point The web page analysis apparatus according to claim 1, wherein a range to be extracted is extracted as the target block.
  3. ユーザにより入力された単語を上記キーワードとして設定するキーワード設定部を更に備えたことを特徴とする請求項1に記載のウェブページ解析装置。 The web page analysis apparatus according to claim 1, further comprising a keyword setting unit that sets a word input by a user as the keyword.
  4. 上記キーワード設定部は、上記ブロック抽出部により抽出された上記対象ブロックの中に含まれる単語を更に上記キーワードとして追加設定することを特徴とする請求項3に記載のウェブページ解析装置。 4. The web page analyzing apparatus according to claim 3, wherein the keyword setting unit additionally sets a word included in the target block extracted by the block extraction unit as the keyword.
  5. 上記キーワード設定部は、解析対象とされたウェブページから上記ブロック抽出部により抽出された上記対象ブロックの総数と、上記キーワードとして設定された単語の出現数とを用い、上記対象ブロックの総数に対する上記単語の出現数の割合に応じた値を、上記キーワードに対するキーワードポイントとして設定することを特徴とする請求項3または4に記載のウェブページ解析装置。 The keyword setting unit uses the total number of the target blocks extracted by the block extraction unit from the analysis-target web page and the number of appearances of the word set as the keyword, and the total number of the target blocks. 5. The web page analyzing apparatus according to claim 3, wherein a value corresponding to a ratio of the number of appearances of words is set as a keyword point for the keyword.
  6. 上記情報抽出部により上記対象ブロック内から抽出された情報について、あらかじめ定めた1以上の種類の情報が揃っているか否かを判定し、揃っている場合にのみ上記対象ブロック内から抽出された情報を出力するフィルタリング部を更に備えたことを特徴とする請求項1に記載のウェブページ解析装置。 For the information extracted from the target block by the information extraction unit, it is determined whether or not one or more types of information determined in advance are available, and the information extracted from the target block only when the information is available The web page analyzing apparatus according to claim 1, further comprising: a filtering unit that outputs.
  7. ウェブページを構成している構造化文書のタグの階層構造を解析し、ルートからの深さに応じた深さポイントを上記構造化文書の行ごとに付与する深さポイント付与手段、
     上記構造化文書の中でキーワードが含まれる行については当該キーワードに応じたキーワードポイントを上記深さポイントに加算するキーワードポイント付与手段、
     上記キーワードポイントが加算されて上記深さポイントとの差分が生じている行およびその前後の数行を含む所定範囲を対象ブロックとして抽出するブロック抽出手段、および
     上記ブロック抽出手段により抽出された対象ブロック内から、所定の条件を満たす情報を抽出する情報抽出手段、
    としてコンピュータを機能させるためのコンピュータ読み取り可能なウェブページ解析用プログラム。
    Depth point assigning means for analyzing the hierarchical structure of tags of the structured document constituting the web page and assigning a depth point corresponding to the depth from the root for each line of the structured document,
    A keyword point giving means for adding a keyword point corresponding to the keyword to the depth point for a line including the keyword in the structured document;
    Block extraction means for extracting a predetermined range including a line in which the keyword point is added and a difference from the depth point is generated and several lines before and after the line, and a target block extracted by the block extraction means Information extracting means for extracting information satisfying a predetermined condition from within,
    A computer-readable web page analysis program for causing a computer to function as a computer.
PCT/JP2011/070978 2011-09-14 2011-09-14 Web page analysis device and program for analyzing web page WO2013038519A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2011/070978 WO2013038519A1 (en) 2011-09-14 2011-09-14 Web page analysis device and program for analyzing web page
JP2012501042A JP4959032B1 (en) 2011-09-14 2011-09-14 Web page analysis apparatus and web page analysis program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/070978 WO2013038519A1 (en) 2011-09-14 2011-09-14 Web page analysis device and program for analyzing web page

Publications (1)

Publication Number Publication Date
WO2013038519A1 true WO2013038519A1 (en) 2013-03-21

Family

ID=46506035

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/070978 WO2013038519A1 (en) 2011-09-14 2011-09-14 Web page analysis device and program for analyzing web page

Country Status (2)

Country Link
JP (1) JP4959032B1 (en)
WO (1) WO2013038519A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017006444A1 (en) * 2015-07-07 2017-01-12 富士通株式会社 Information acquisition device, information acquisition program, and information acquisition method
JP2021190016A (en) * 2020-06-04 2021-12-13 株式会社ソフマップ Reuse commodity sales system and program of reuse commodity sales system

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006155147A (en) * 2004-11-29 2006-06-15 Kddi Corp Content conversion system and computer program
JP2007193642A (en) * 2006-01-20 2007-08-02 Nippon Telegr & Teleph Corp <Ntt> Xpath processor, xpath processing method, xpath processing program and storage medium
WO2007119567A1 (en) * 2006-03-31 2007-10-25 Justsystems Corporation Document processing device and document processing method
JP2008021270A (en) * 2006-07-14 2008-01-31 Univ Of Tokyo Data conversion apparatus and its method, database management apparatus and its method, and database search system and its method
JP2008090402A (en) * 2006-09-29 2008-04-17 Just Syst Corp Document processing apparatus, method and program
JP2008090403A (en) * 2006-09-29 2008-04-17 Just Syst Corp Document retrieval apparatus, method and program
JP2008225957A (en) * 2007-03-14 2008-09-25 Just Syst Corp Document retrieval device, method, and program
JP2011100403A (en) * 2009-11-09 2011-05-19 Sony Corp Information processor, information extraction method, program and information processing system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006155147A (en) * 2004-11-29 2006-06-15 Kddi Corp Content conversion system and computer program
JP2007193642A (en) * 2006-01-20 2007-08-02 Nippon Telegr & Teleph Corp <Ntt> Xpath processor, xpath processing method, xpath processing program and storage medium
WO2007119567A1 (en) * 2006-03-31 2007-10-25 Justsystems Corporation Document processing device and document processing method
JP2008021270A (en) * 2006-07-14 2008-01-31 Univ Of Tokyo Data conversion apparatus and its method, database management apparatus and its method, and database search system and its method
JP2008090402A (en) * 2006-09-29 2008-04-17 Just Syst Corp Document processing apparatus, method and program
JP2008090403A (en) * 2006-09-29 2008-04-17 Just Syst Corp Document retrieval apparatus, method and program
JP2008225957A (en) * 2007-03-14 2008-09-25 Just Syst Corp Document retrieval device, method, and program
JP2011100403A (en) * 2009-11-09 2011-05-19 Sony Corp Information processor, information extraction method, program and information processing system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017006444A1 (en) * 2015-07-07 2017-01-12 富士通株式会社 Information acquisition device, information acquisition program, and information acquisition method
JP2021190016A (en) * 2020-06-04 2021-12-13 株式会社ソフマップ Reuse commodity sales system and program of reuse commodity sales system
JP7146846B2 (en) 2020-06-04 2022-10-04 株式会社ソフマップ Reuse product sales system, Reuse product sales system program

Also Published As

Publication number Publication date
JPWO2013038519A1 (en) 2015-03-23
JP4959032B1 (en) 2012-06-20

Similar Documents

Publication Publication Date Title
US20220215063A1 (en) System and method for block segmenting, identifying and indexing visual elements, and searching documents
CN108628971B (en) Text classification method, text classifier and storage medium for unbalanced data set
US8407253B2 (en) Apparatus and method for knowledge graph stabilization
EP2798540B1 (en) Extracting search-focused key n-grams and/or phrases for relevance rankings in searches
US8868621B2 (en) Data extraction from HTML documents into tables for user comparison
JP5143057B2 (en) Important keyword extraction apparatus, method and program
JP2014501988A5 (en)
US20110246486A1 (en) Methods and Systems for Extracting Domain Phrases
US20120053927A1 (en) Identifying topically-related phrases in a browsing sequence
US20100211927A1 (en) Website design pattern modeling
JP2015144011A (en) Device and method for search result ordering using reliability of representative
US11907278B2 (en) Method and apparatus for deriving keywords based on technical document database
JP5056133B2 (en) Information extraction system, information extraction method, and information extraction program
JP4959032B1 (en) Web page analysis apparatus and web page analysis program
JP5179564B2 (en) Query segment position determination device
JP5447368B2 (en) NEW CASE GENERATION DEVICE, NEW CASE GENERATION METHOD, AND NEW CASE GENERATION PROGRAM
JP2010117941A (en) Device for extracting primary content of web documents and program
Annam et al. Entropy based informative content density approach for efficient web content extraction
JP2010267017A (en) Device, method and program for classifying document
JP6749865B2 (en) INFORMATION COLLECTION DEVICE AND INFORMATION COLLECTION METHOD
JP2012104051A (en) Document index creating device
JP2011170503A (en) Method for providing search formula, program, and system for providing search formula
KR100650151B1 (en) A Web Searching Method using the keyword profile based on the document style
JP5701830B2 (en) Document structure analysis apparatus and program
JP5769648B2 (en) Related word acquisition apparatus and related word acquisition method

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2012501042

Country of ref document: JP

Kind code of ref document: A

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

Ref document number: 11872377

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11872377

Country of ref document: EP

Kind code of ref document: A1