Limited Time — Lifetime Access for just $99. Lock in before prices rise.

UScraper

Documentation

Learn UScraper from overview to every block

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

UScraper runs a visual browser graph

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.

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.

Normal blocks follow the next connection

Navigation, interaction, wait, extraction, setup, and export blocks continue through the first connected output path.

Condition blocks branch

Element Exists, Element Visible, and Text Contains expose true and false connectors so one graph can handle alternate page states.

Proxy configuration is special

Set Proxy configures browser startup and is excluded from normal graph execution. It does not need to sit in the main chain.

Multiple inputs create internal loops

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 is not End

Loop Continue advances the active multi-input loop and then follows its outgoing connection after the final input. End terminates the run.

Structured Export is row based

The row selector finds repeated items. Each column selector is evaluated inside each row, then written to CSV.

Workflow

A practical path for building a scraper

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.

1

Choose a target page

Open the page manually, confirm the data is visible, and inspect the DOM in Chrome DevTools.

2

Build the graph

Start with Navigate, connect interaction and wait blocks, then finish with extraction, export, Loop Continue for repeated inputs, or End.

3

Stabilize selectors

Use CSS selectors or XPath that survive refreshes. Prefer data attributes and repeated row containers over copied full paths.

4

Export and verify

Run one URL or one search term first, inspect rows, then use multiple inputs and append mode once the CSV shape is correct.

Recipes

Common graph patterns

Use these patterns as starting points. Swap selectors, waits, and export columns to match the site you are scraping.

Single page extraction

Navigate -> Wait for Element -> Extract Text -> End

Best for article fields, profile details, counters, or one-off values.

Listing to CSV

Navigate -> Wait for Element -> Structured Export -> End

Best for products, reviews, directories, tables, search results, and cards.

Search form

Navigate -> Type Text -> Click -> Wait for Element -> Structured Export -> End

Best when a user must enter a query before the result rows appear.

Multiple search terms

Navigate -> Type Text -> Click -> Wait -> Structured Export -> Reset Page -> Loop Continue -> End

Best when the same search form should run for many inputs. Reset the page or clear the input before Loop Continue.

Lazy loaded page

Navigate -> Wait for Element -> Scroll -> Sleep -> Structured Export -> End

Best when results appear only after the viewport moves down the page.

Optional popup

Element Exists -> true: Click close -> Export, false: Export

Best for cookie banners, modals, and intermittent empty-state panels.

Block reference

Every supported block has its own page

Open a block page for its purpose, behavior, configuration fields, example flow, outputs, caveats, and practical usage notes.

Navigation

Interaction

Extraction

Wait & Timing

Conditions

Setup & Actions

Export

Quality checklist

Before you trust a scraper

Run the same checks every time you build a new graph or update selectors for a changed website.

  • Use one URL while designing and debugging the graph.
  • Confirm selector match counts in DevTools before exporting.
  • Use Wait for Element or Wait for Text instead of long fixed sleeps when possible.
  • Place Loop Continue after the reset step that prepares the next multi-input iteration.
  • Use append mode only after confirming headers and columns are correct.
  • Respect site terms, robots rules, rate limits, privacy, and data ownership requirements.
FAQ

Frequently asked questions

Here are some of our most common questions. Can't find what you're looking for?

View All FAQs

Stop writing scripts. Start scraping visually.

Download 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]