# Extract Data

The block allows you to extract homogeneous structured data from web pages (search results, menu items, lists, tables, etc.) and place it in a variable in the form of a Data Table. To specify the required data source and extraction settings, use the "Extract Data" button on the Designer's toolbar or the "Record" button in the Selector editing window of this block.

<table data-header-hidden><thead><tr><th width="243" valign="top"></th><th width="312" valign="top"></th></tr></thead><tbody><tr><td valign="top">Selector</td><td valign="top">[Selector] The identifier of the browser window and web page element, or a set of homogeneous elements (headings, links, text blocks, etc.) that need to be extracted.</td></tr><tr><td valign="top">Next Page</td><td valign="top">[Selector] Selector for navigating to the next page. If specified, data will be automatically collected from all pages.</td></tr><tr><td valign="top">X Offset</td><td valign="top">[Number] Relative offset on the X coordinate from the top left corner of the target element on the next page.</td></tr><tr><td valign="top">Y Offset</td><td valign="top">[Number] Relative offset on the Y coordinate from the top left corner of the target element on the next page.</td></tr><tr><td valign="top">Next Page Pause</td><td valign="top">[Number] Pause time after clicking on the next page element in seconds. Can be used if the data on the page is updated via AJAX.</td></tr><tr><td valign="top">Number of Pages</td><td valign="top">[Number] The number of pages to be processed. If the value is not specified or is zero, all possible pages will be processed until the next page element is no longer available.</td></tr><tr><td valign="top">Number of Rows</td><td valign="top">[Number] The maximum number of rows to be extracted.</td></tr><tr><td valign="top">Process ID</td><td valign="top"><p>[Link] A variable that stores the process and browser tab identifier used by this block.</p><p>If the property is left empty, or if the "Process ID" variable was not previously assigned at the time of opening the browser, the application and browser tab will be determined from the content of the corresponding selector row.</p><p>The process ID can be obtained, for example, using the "Launch IE", "Launch Chrome", or "Attach to Browser" blocks.</p></td></tr><tr><td valign="top">Delay Before</td><td valign="top">[Number] Delay in seconds before executing the block.</td></tr><tr><td valign="top">Delay After</td><td valign="top">[Number] Delay in seconds after executing the block.</td></tr><tr><td valign="top">Timeout</td><td valign="top">[Number] The maximum wait time for the element to appear in seconds.</td></tr><tr><td valign="top">Result</td><td valign="top">[Data Table] A table containing the extracted data.</td></tr><tr><td valign="top">Error Handling Level</td><td valign="top"><p>Select the error handling level. Possible values:</p><ul><li>"Default" - by default;</li><li>"Ignore" - errors are ignored;</li><li>"Handle" - errors are handled.</li></ul><p>If "Default" is selected, the value from the "Start" block of this diagram will be used.</p></td></tr><tr><td valign="top">Message Level</td><td valign="top"><p>Select the message level that blocks will output during operation. Possible values:</p><ul><li>"Default" - by default;</li><li>"Release" - output is disabled;</li><li>"Debug" - outputs main information;</li><li>"Detailed" - outputs detailed information.</li></ul><p>If "Default" is selected, the value from the "Start" block of this diagram will be used.</p></td></tr><tr><td valign="top">Error Text</td><td valign="top">[Text] Returns detailed information about the error in case of incorrect execution of the block's work.</td></tr></tbody></table>
