1. A computer-implemented method comprising: under control of one or more processors configured with executable instructions: forming a cluster for a plurality of web pages based at least in part on a similar characteristic of the plurality of web pages; transforming data of the cluster to determine one or more occurrence vectors and one or more position vectors for data items of the plurality of web pages; determining a root template for the cluster based on the one or more occurrence vectors; determining one or more detail templates for the cluster based on the one or more position vectors, wherein determining the one or more detail templates comprises: dividing document object model (DOM) trees of the plurality of web pages of the cluster into a plurality of blocks based at least in part on a plurality of tag path text items present in the root template; detecting one or more patterns in each block of the plurality of blocks to identify additional data fields; identifying an additional data field of the additional data fields to be one of a first type or a second type in a block of the plurality of blocks, the identifying enabling the block to be split into a plurality of new blocks, wherein the first type comprises a data field located after a tag path text item which occurs once in at least a predetermined number of web pages and the second type comprises a data field following an equivalence class that occurs one or more times and for which no other tag path is present; and repeating the detecting and the identifying for the plurality of new blocks; and extracting structured information for the cluster based on the root template and the one or more detail templates.