Skip to content

Scraper 2.0

Scraper 2.0 is a powerful tool for web scraping.

Key Features:

  • High Quality and Fast Proxy for reliable web scraping.
  • Create 30-minute sessions for Proxy IP reservation.
  • Perform GET and POST requests.
  • Execute JavaScript on pages.
  • Handle cookies.
  • Customize headers.
  • Capture screenshots.

Failed Requests are Free

We use high-quality proxies, along with proxy manager, to ensure reliable web scraping. However, in the unlikely event that our API is unable to retrieve the requested page, it will return a 5xx status code. These failed requests will not count towards your quota or incur any charges.

Proxy Regions

Region CodeCountry
USUnited States
HKHong Kong
TWTaiwan
JPJapan
RURussia
MYMalaysia
IDIndonesia
VNVietnam
SGSingapore
GBUnited Kingdom
DEGermany

💎 Proxy Region and IP Reservation

In requests, you can specify region and sid.

  • region Choose any from the list above. A random region will be selected if empty.
  • sid Must be a string from 5 to 12 characters long without special characters. If sid is set, then IP will be reserved for 30 minutes.

💡 Performance Tips

Use params.blockImages and params.blockMedia to reduce traffic and speedup response.

Common Options

  • headers Customize headers.
  • cookies Handle cookies.
  • params.timeout Request timeout in seconds. Default is 30.
  • params.userAgent Set User-Agent. If not set, a random User-Agent will be used.
  • params.followRedirects If set to false, the API will not follow redirects. Default is true.

Methods

/get

Performs a simple GET request.

Request Example:

json
{
  "url": "https://example.com/page.html?query=val",

  // optional, region id
  "region": "US",

  // optional, session id for Proxy IP reservation
  "sid": "abcd12345",

  // optional
  "headers": {
    "header-name": "value",
    ...
  },

  // optional 🍪
  "cookies": {
    "name-1": "value-1",
    ...
  },

  // optional
  "params": {
    // Timeout in seconds, default: 30
    "timeout": 30,

    // If UA not set, will be randomly generated.
    "userAgent": "Mozilla/5.0"
  }
}

/post

Performs a simple POST request.

Request Example:

json
{
  "url": "https://example.com/page.html?query=val",

  "post": {
    "field-1": "value-1",
    "field-2": "value-2",
    ...
  },

  // optional, region id
  "region": "US",

  // optional, session id for Proxy IP reservation
  "sid": "abcd12345",

  // optional
  "headers": {
    "Content-type": "application/json" or "application/x-www-form-urlencoded"
    ...
  },

  // optional 🍪
  "cookies": {
    "name-1": "value-1",
    ...
  },

  // optional
  "params": {
    // Timeout in seconds, default: 30
    "timeout": 30,

    // If UA not set, will be randomly generated.
    "userAgent": "Mozilla/5.0"
  }
}

/get-js

Performs a GET request, executes JavaScript, and can capture a screenshot.

Request Example:

json
{
  "url": "https://example.com/page.html?query=val",

  // optional, region id
  "region": "US",

  // optional, session id for Proxy IP reservation
  "sid": "abcd12345",

  // optional
  "headers": {
    "header-name": "value",
    ...
  },

  // optional 🍪
  "cookies": {
    "name-1": "value-1",
    ...
  },

  // optional
  "params": {
    // Timeout in seconds, default: 30
    "timeout": 30,

    // If UA not set, will be randomly generated.
    "userAgent": "Mozilla/5.0"

    // optional, wait after DOM Loaded, default: 0
    "waitForTimeout": 5,

    // optional, disable images from load, this will speedup response, default: false
    "blockImages": true,

    // optional, disable styles and fonts, this will speedup response, default: false
    "blockMedia": true,

    // optional
    "viewport": {
        "width": 800,
        "height": 600
    },

    // optional, to make screenshot
    "screenshot": true
  }
}

/post-js

Performs a POST request, executes JavaScript, and can capture a screenshot.

Request Example:

json
{
  "url": "https://example.com/page.html?query=val",

  // optional, region id
  "region": "US",

  // optional, session id for Proxy IP reservation
  "sid": "abcd12345",

  "post": {
    "field-1": "value-1",
    "field-2": "value-2",
    ...
  },

  // optional
  "headers": {
    "Content-type": "application/json" or "application/x-www-form-urlencoded"
    ...
  },

  // optional 🍪
  "cookies": {
    "name-1": "value-1",
    ...
  },

  // optional
  "params": {
    // Timeout in seconds, default: 30
    "timeout": 30,

    // If UA not set, will be randomly generated.
    "userAgent": "Mozilla/5.0"

    // optional, wait after DOM Loaded, default: 0
    "waitForTimeout": 5,

    // optional, disable images from load, this will speedup response, default: false
    "blockImages": true,

    // optional, disable styles and fonts, this will speedup response, default: false
    "blockMedia": true,

    // optional
    "viewport": {
        "width": 800,
        "height": 600
    },

    // optional, to make screenshot
    "screenshot": true
  }
}

Response Example

json
{
  // Headers as-is
  "headers": {
    "connection": "keep-alive",
    "content-encoding": "gzip",
    "content-type": "text/html; charset=UTF-8"
  },

  // 🍪
  "cookies": {
    "some-cookie": "some-value"
  },

  // Page content
  "body": "<html>...</html>",

  // Base64-encoded page screenshot, if requested
  "screenshot": "iVBORw0KGgoAAAANSUhEUgAABAAAAAJYCAIAAABzc..."
}