Scrapeunblocker avatar

Scrapeunblocker

Pricing

$1.50 / 1,000 results

Go to Apify Store
Scrapeunblocker

Scrapeunblocker

ScrapeUnblocker allows to bypass anti-bot services and scrape the full page source of any given URL within seconds.

Pricing

$1.50 / 1,000 results

Rating

2.9

(4)

Developer

Scrapeunblocker

Scrapeunblocker

Maintained by Community

Actor stats

3

Bookmarked

188

Total users

64

Monthly active users

9 days ago

Last modified

Share

๐Ÿš€ ScrapeUnblocker - Bypass Anti-Bot Systems & Get Clean HTML or Parsed JSON

ScrapeUnblocker is the most advanced tool on the market, capable of defeating the most complex protections and anti-bot systems. It fetches the full HTML of almost any website effortlessly โ€” and can now return ready-to-use structured JSON instead of raw HTML.

Just provide a URL โ†’ get clean HTML, or flip one switch โ†’ get parsed data extracted for you.


โšก Why use ScrapeUnblocker?

Most scraping tools fail on protected websites.

ScrapeUnblocker solves this by using real browser-like behavior and advanced bypass techniques.

  • No browser setup
  • No proxy setup
  • No anti-bot headaches

โœจ NEW: Get parsed data instantly (parsed_data)

Stop writing brittle HTML parsers. Set parsed_data: true and ScrapeUnblocker returns clean structured JSON โ€” titles, prices, listings, key fields โ€” extracted straight from the page via Schema.org / __NEXT_DATA__ / AI-generated rules.

  • ๐Ÿง  Skip the parsing work โ€” get usable JSON, not a 1 MB HTML blob
  • ๐Ÿค– AI-powered extraction that adapts per page type
  • ๐Ÿ” One input flag โ€” parsed_data: true, nothing else to set up

This is a genuine superpower: bypass the anti-bot and the data is already structured for you.


๐Ÿ› ๏ธ Features

  • Fetch full HTML from protected websites
  • Optional parsed JSON output (parsed_data: true)
  • Browser steps โ€” click, type, select, scroll, wait for elements before capturing the page (steps)
  • Discover interactive elements with ready-to-use selectors (list_elements: true)
  • Supports Cloudflare, PerimeterX, DataDome, Akamai
  • Built-in rotating proxies
  • Target a specific exit country (proxy_country)
  • Minimal input (only URL required)

๐Ÿ–ฑ๏ธ NEW: Interact with the page before capturing (steps)

Some pages only show what you need after you interact โ€” type into a search box, click a button, accept a cookie banner, or wait for results to load. With steps you describe those actions and ScrapeUnblocker runs them in a real browser, then returns the resulting page.

steps is an ordered list of actions. Each action is an object with an action and, depending on the action, a selector and/or a value:

ActionWhat it doesNeeds
wait_forWait until an element appearsselector
wait_for_textWait until some text appears on the pagevalue
waitWait a fixed number of millisecondsvalue (ms)
clickClick an elementselector
typeType text into an inputselector, value
selectPick an option in a <select>selector, value
press_keyPress a keyboard key (e.g. Enter)value
scrollScroll the page (e.g. bottom)value

Example โ€” search for "bmw" and wait for the results:

{
"url": "https://example.com",
"steps": [
{ "action": "type", "selector": "#q", "value": "bmw" },
{ "action": "press_key", "value": "Enter" },
{ "action": "wait_for", "selector": ".results" }
]
}
  • Steps run once (they are non-idempotent โ€” a step may submit a form), so this mode does not auto-retry.
  • If a step fails (bad selector, element never appeared), the Actor returns a structured error telling you which step failed (step_index, action, reason) plus the page HTML at that point โ€” so you can fix the selector.

๐Ÿ”Ž NEW: Discover what to click (list_elements)

Not sure which selector to target? Set list_elements: true and, instead of HTML, the Actor returns the page's interactive elements (buttons, inputs, selects, links, forms) with ready-to-use selectors. Use it to build your steps list.

{
"url": "https://example.com",
"list_elements": true
}

Returns:

{
"url": "https://example.com",
"count": 3,
"elements": [
{ "tag": "input", "selector": "#q", "id": "q", "text": "" },
{ "tag": "button", "selector": ".search-btn", "text": "Search" }
]
}

๐Ÿ“ฅ Input

Raw HTML (default):

{
"url": "https://example.com"
}

Parsed structured JSON:

{
"url": "https://example.com",
"parsed_data": true
}

Target a specific exit country (optional):

{
"url": "https://example.com",
"proxy_country": "DE"
}

proxy_country is a two-letter ISO country code. Leave it empty (Random) to let ScrapeUnblocker pick the best country for the target. Available: AT, BE, BG, BR, CA, CH, CN, DE, DK, EE, ES, FR, GB, GR, HK, HR, IE, IL, IT, JP, KR, LT, LU, LV, MD, NL, NO, PL, RO, RS, SE, SG, TH, TR, TW, US.


๐Ÿ“ค Output

Default (parsed_data: false) โ€” one dataset item with the full HTML:

{
"url": "https://example.com",
"html": "<html>...</html>"
}

With parsed_data: true โ€” one dataset item with structured JSON (shape depends on the page type):

{
"url": "https://autoplius.lt/skelbimai/naudoti-automobiliai",
"data": {
"results": {
"items": [
{ "title": "BMW i5 2024 ...", "url": "https://autoplius.lt/skelbimai/..." }
]
}
}
}

๐Ÿš€ How to use

Python example

import requests
API_TOKEN = "YOUR_APIFY_TOKEN"
response = requests.post(
f"https://api.apify.com/v2/acts/scrapeunblocker~scrapeunblocker/run-sync-get-dataset-items?token={API_TOKEN}",
json={"url": "https://example.com", "parsed_data": True}
)
print(response.json())

cURL example

curl -X POST "https://api.apify.com/v2/acts/scrapeunblocker~scrapeunblocker/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com", "parsed_data": true}'

๐Ÿ” Real use cases

  • Scraping marketplaces (cars, real estate, e-commerce)
  • Extracting structured data from protected pages without writing parsers
  • Feeding HTML into BeautifulSoup / Cheerio / LLMs
  • Monitoring competitor pages

โš ๏ธ Important notes

  • Retries are expected: Due to the nature of complex anti-bot systems, requests might not always succeed on the first try and you may encounter errors. If a request fails, we highly recommend trying again, as subsequent attempts are often successful.
  • When parsed_data: true is used on a brand-new domain, extraction rules may still be generating โ€” the Actor automatically waits and retries until the parsed result is ready.
  • Response time depends on target protection level

๐Ÿ’ก More tools, docs & functionality

ScrapeUnblocker also offers SERP scraping, image fetching, cookies retrieval and more.

๐Ÿ‘‰ Explore the full documentation and feature set at scrapeunblocker.com