1. A computer-implemented method comprising the steps of: obtaining a result set of a plurality of search results from a search engine in response to a query for an item from a user, wherein each of the plurality of search results comprises a uniform resource locator (URL); downloading, for each URL of the result set, a corresponding Hypertext Markup Language (HTML) document; building, for each HTML document, a hierarchical tree of elements defined by a Document Object Model (DOM) associated with the HTML document, wherein the hierarchical tree of elements comprises nodes which represent elements in the HTML document; parsing each HTML document to identify data and metadata, wherein the metadata comprises: element name, element type, element text, node ID number, and node level, and wherein the node level indicates a depth of an element in the hierarchical tree of elements; determining, for each HTML document, whether the data should be extracted into a corresponding page table, wherein the page table comprises: rows of items, columns of attributes, and cells of attribute values, and wherein the determining is based in part on whether the data positively satisfies all of: a plurality of elements exist at the same node level, each element contains element text, and each element occurs in the middle of the HTML document; in response to determining that the data should be extracted into the corresponding page table: extracting text from nodes at a first node level, wherein the first node level contains at least a threshold quantity of nodes containing element text, and for each child node of a node from the extracting step, recursively extracting text from all successive child nodes; consolidating the page tables into a result table; providing to the user a user interface comprising the page tables and the result table, wherein the user interface permits the editing of the page tables and result table.