Execution starts at the first unconnected block
UScraper finds a non-proxy block with no incoming connection and runs from there. Keep one obvious starting block per scraper.
Limited Time — Lifetime Access for just $99. Lock in before prices rise.
Documentation
This documentation teaches the graph model first, then explains each block in its own reference page so users can build custom scrapers without starting from a template.
Overview
A scraper is a sequence of connected blocks. The browser performs each block in order, waits when instructed, branches on conditions, and writes data locally when an export block runs.
UScraper finds a non-proxy block with no incoming connection and runs from there. Keep one obvious starting block per scraper.
Navigation, interaction, wait, extraction, setup, and export blocks continue through the first connected output path.
Element Exists, Element Visible, and Text Contains expose true and false connectors so one graph can handle alternate page states.
Set Proxy configures browser startup and is excluded from normal graph execution. It does not need to sit in the main chain.
Navigate can hold multiple URLs and Type Text can hold multiple text values. Use Loop Continue at the end of the repeated work to advance to the next input.
Loop Continue advances the active multi-input loop and then follows its outgoing connection after the final input. End terminates the run.
The row selector finds repeated items. Each column selector is evaluated inside each row, then written to CSV.
Workflow
The safest way to build a custom scraper is to design against one page, verify selectors, and only then expand to URL lists or more complex branching.
Open the page manually, confirm the data is visible, and inspect the DOM in Chrome DevTools.
Start with Navigate, connect interaction and wait blocks, then finish with extraction, export, Loop Continue for repeated inputs, or End.
Use CSS selectors or XPath that survive refreshes. Prefer data attributes and repeated row containers over copied full paths.
Run one URL or one search term first, inspect rows, then use multiple inputs and append mode once the CSV shape is correct.
Recipes
Use these patterns as starting points. Swap selectors, waits, and export columns to match the site you are scraping.
Navigate -> Wait for Element -> Extract Text -> EndBest for article fields, profile details, counters, or one-off values.
Navigate -> Wait for Element -> Structured Export -> EndBest for products, reviews, directories, tables, search results, and cards.
Navigate -> Type Text -> Click -> Wait for Element -> Structured Export -> EndBest when a user must enter a query before the result rows appear.
Navigate -> Type Text -> Click -> Wait -> Structured Export -> Reset Page -> Loop Continue -> EndBest when the same search form should run for many inputs. Reset the page or clear the input before Loop Continue.
Navigate -> Wait for Element -> Scroll -> Sleep -> Structured Export -> EndBest when results appear only after the viewport moves down the page.
Element Exists -> true: Click close -> Export, false: ExportBest for cookie banners, modals, and intermittent empty-state panels.
Block reference
Open a block page for its purpose, behavior, configuration fields, example flow, outputs, caveats, and practical usage notes.
Navigation
Opens one page or loops through a list of pages.
Read block docsNavigation
Moves the browser back one step in its history.
Read block docsNavigation
Moves the browser forward one step in its history.
Read block docsNavigation
Reloads the current page.
Read block docsInteraction
Clicks an element found by CSS selector or XPath.
Read block docsInteraction
Clears and types one or more text values into an input field.
Read block docsInteraction
Selects an option from a standard HTML dropdown.
Read block docsInteraction
Scrolls the page or brings a target element into view.
Read block docsWait & Timing
Waits until an element exists or is visible.
Read block docsWait & Timing
Waits until specific text appears on the page or inside an element.
Read block docsWait & Timing
Waits for the base page document to be available.
Read block docsWait & Timing
Pauses execution for a fixed number of seconds.
Read block docsConditions
Branches based on whether an element exists in the DOM.
Read block docsConditions
Branches based on whether an element is present and displayed.
Read block docsConditions
Branches based on whether text appears on the page or inside an element.
Read block docsSetup & Actions
Configures browser proxy settings before execution starts.
Read block docsSetup & Actions
Resizes the browser window.
Read block docsSetup & Actions
Captures the current browser page as an image.
Read block docsSetup & Actions
Runs custom JavaScript in the page context.
Read block docsSetup & Actions
Terminates the current scraper run.
Read block docsSetup & Actions
Advances the active multi-input loop without ending the run.
Read block docsQuality checklist
Run the same checks every time you build a new graph or update selectors for a changed website.
Here are some of our most common questions. Can't find what you're looking for?
View All FAQsDownload UScraper and build your first web scraper in under 10 minutes. No subscriptions, no code, no limits.
Available on Windows 10+ and macOS 12+ · Need help? [email protected]