WebScraping.AI

App · AI Agents · 8 actions

Read any web page as HTML or clean text, pull out just the parts you name, ask AI questions about it, and search Google, with proxies and JavaScript rendering handled for you.

Actions

ActionWhat it does
Ask about a pageLoad a web page and answer a question about it in plain language: 'is this in stock?', 'who wrote this?', 'what does it cost?'.
Check remaining creditsSee how many credits the connected WebScraping.AI account has left and when its plan renews.
Extract fields from a pageLoad a web page and pull out the fields you name, each described in your own words.
Get a page as textLoad a web page and return it as clean Markdown, with the menus, adverts and scripts stripped out and the headings, lists and tables kept.
Get a page's HTMLLoad a web page and return its HTML, exactly as a browser would see it once the page has finished drawing itself.
Get part of a pageLoad a web page and return only the part a CSS selector matches: a price, a headline, a table.
Get several parts of a pageLoad a web page once and return what each of several CSS selectors matched, kept separate and in the order you listed them.
Search GoogleRun a Google search and get the results back as a list: position, title, link and snippet.

Ask about a page

Load a web page and answer a question about it in plain language: 'is this in stock?', 'who wrote this?', 'what does it cost?'. No selectors needed, and the answer survives a redesign of the page.

Inputs

Page URLurltextRequired
The web page to load, starting with http:// or https://.
QuestionquestiontextRequired
What to ask about the page, written the way you would ask a colleague.
Render JavaScriptrender_javascripttrue/false
Leave this on so pages that draw their content with JavaScript come back complete. Turn it off for plain HTML pages; it is faster and costs fewer credits.Default: true.
Wait for elementwait_fortext
Optional. A CSS selector to wait for before reading the page. Use it when the part you need appears a moment after the rest of the page.
Proxy typeproxytext
Optional. How to route the visit when a site turns automated traffic away. Each step up costs more credits, so move up only if the page comes back blocked. Standard is used when this is left empty.One of: datacenter (Standard — fastest and cheapest), residential (Residential — for sites that block data centres), stealth (Stealth — for sites with the strongest bot protection).
Visit fromcountrytext
Optional. Visit the page from this country. Useful for sites that show different prices, stock or content by region. Defaults to the United States.One of: us (United States), gb (United Kingdom), de (Germany), it (Italy), fr (France), ca (Canada), es (Spain), ru (Russia), jp (Japan), kr (South Korea), and 3 more.
Devicedevicetext
Optional. Which kind of device to visit as. Pick Mobile to get the mobile version of a page. Defaults to Desktop.One of: desktop, mobile, tablet.

Outputs

answertext
The answer, in plain language
questiontext
The question that was asked
urltext
The page that was read
Example output
{
  "answer": "Yes \u2014 the page shows it as in stock and ready to ship.",
  "question": "Is this product in stock right now?",
  "url": "https://example.com/product"
}

Check remaining credits

See how many credits the connected WebScraping.AI account has left and when its plan renews. Useful as a first step in a long run, or on a schedule that warns you before you run out.

Inputs

None.

Outputs

emailtext
The account the connected key belongs to
plan_renews_attext
When the plan's credits reset (UTC)
remaining_creditsnumber
Credits left in total
remaining_plan_creditsnumber
Credits left on this month's plan
remaining_simultaneous_requestsnumber
How many more requests this plan can have running at the same moment
remaining_topup_creditsnumber
Credits left from top-ups, spent after the plan's own credits run out
Example output
{
  "email": "you@example.com",
  "plan_renews_at": "2026-10-01T00:00:00Z",
  "remaining_credits": 12450,
  "remaining_plan_credits": 2450,
  "remaining_simultaneous_requests": 5,
  "remaining_topup_credits": 10000
}

Extract fields from a page

Load a web page and pull out the fields you name, each described in your own words. Point it at a product, a listing or a profile and get back tidy values ready for a spreadsheet or a record.

Inputs

Page URLurltextRequired
The web page to load, starting with http:// or https://.
Fields to extractfieldsobjectRequired
The fields you want. Name each one, and describe what it is so the page can be read for it: 'price' → 'Current product price'. Up to 20.
Render JavaScriptrender_javascripttrue/false
Leave this on so pages that draw their content with JavaScript come back complete. Turn it off for plain HTML pages; it is faster and costs fewer credits.Default: true.
Wait for elementwait_fortext
Optional. A CSS selector to wait for before reading the page. Use it when the part you need appears a moment after the rest of the page.
Proxy typeproxytext
Optional. How to route the visit when a site turns automated traffic away. Each step up costs more credits, so move up only if the page comes back blocked. Standard is used when this is left empty.One of: datacenter (Standard — fastest and cheapest), residential (Residential — for sites that block data centres), stealth (Stealth — for sites with the strongest bot protection).
Visit fromcountrytext
Optional. Visit the page from this country. Useful for sites that show different prices, stock or content by region. Defaults to the United States.One of: us (United States), gb (United Kingdom), de (Germany), it (Italy), fr (France), ca (Canada), es (Spain), ru (Russia), jp (Japan), kr (South Korea), and 3 more.
Devicedevicetext
Optional. Which kind of device to visit as. Pick Mobile to get the mobile version of a page. Defaults to Desktop.One of: desktop, mobile, tablet.

Outputs

field_nameslist
The field names that were asked for
fieldsobject
The values found, under the field names you asked for. A field the page didn't answer is empty.
urltext
The page that was read
Example output
{
  "field_names": [
    "title",
    "price",
    "availability"
  ],
  "fields": {
    "availability": "In stock",
    "price": "$39.95",
    "title": "Aeropress Go"
  },
  "url": "https://example.com/product"
}

Get a page as text

Load a web page and return it as clean Markdown, with the menus, adverts and scripts stripped out and the headings, lists and tables kept. This is the shape to hand to an AI step, or to save as a readable record of a page.

Inputs

Page URLurltextRequired
The web page to load, starting with http:// or https://.
Include linksinclude_linkstrue/false
Also return every link in the page's text. Useful when one step should feed the next: loop over the links and read each page in turn.Default: false.
Render JavaScriptrender_javascripttrue/false
Leave this on so pages that draw their content with JavaScript come back complete. Turn it off for plain HTML pages; it is faster and costs fewer credits.Default: true.
Wait for elementwait_fortext
Optional. A CSS selector to wait for before reading the page. Use it when the part you need appears a moment after the rest of the page.
Proxy typeproxytext
Optional. How to route the visit when a site turns automated traffic away. Each step up costs more credits, so move up only if the page comes back blocked. Standard is used when this is left empty.One of: datacenter (Standard — fastest and cheapest), residential (Residential — for sites that block data centres), stealth (Stealth — for sites with the strongest bot protection).
Visit fromcountrytext
Optional. Visit the page from this country. Useful for sites that show different prices, stock or content by region. Defaults to the United States.One of: us (United States), gb (United Kingdom), de (Germany), it (Italy), fr (France), ca (Canada), es (Spain), ru (Russia), jp (Japan), kr (South Korea), and 3 more.
Devicedevicetext
Optional. Which kind of device to visit as. Pick Mobile to get the mobile version of a page. Defaults to Desktop.One of: desktop, mobile, tablet.

Outputs

descriptiontext
The page's meta description, when it has one
linkslist
Links found in the page's text, empty unless 'Include links' was turned on
markdowntext
The page's content as Markdown
titletext
The page's title
urltext
The page that was read
Example output
{
  "description": "A travel press that brews a full cup in a minute.",
  "links": [
    "https://example.com/product/aeropress-go",
    "https://example.com/shipping"
  ],
  "markdown": "# Aeropress Go\n\n**$39.95**\n\nA travel press that brews a full cup in a minute.\n\n- Brews in 60 seconds\n- Packs into its own mug\n",
  "title": "Aeropress Go \u2014 Example Coffee",
  "url": "https://example.com/product"
}

Get a page's HTML

Load a web page and return its HTML, exactly as a browser would see it once the page has finished drawing itself. Use this when a later step needs the raw markup.

Inputs

Page URLurltextRequired
The web page to load, starting with http:// or https://.
Render JavaScriptrender_javascripttrue/false
Leave this on so pages that draw their content with JavaScript come back complete. Turn it off for plain HTML pages; it is faster and costs fewer credits.Default: true.
Wait for elementwait_fortext
Optional. A CSS selector to wait for before reading the page. Use it when the part you need appears a moment after the rest of the page.
Proxy typeproxytext
Optional. How to route the visit when a site turns automated traffic away. Each step up costs more credits, so move up only if the page comes back blocked. Standard is used when this is left empty.One of: datacenter (Standard — fastest and cheapest), residential (Residential — for sites that block data centres), stealth (Stealth — for sites with the strongest bot protection).
Visit fromcountrytext
Optional. Visit the page from this country. Useful for sites that show different prices, stock or content by region. Defaults to the United States.One of: us (United States), gb (United Kingdom), de (Germany), it (Italy), fr (France), ca (Canada), es (Spain), ru (Russia), jp (Japan), kr (South Korea), and 3 more.
Devicedevicetext
Optional. Which kind of device to visit as. Pick Mobile to get the mobile version of a page. Defaults to Desktop.One of: desktop, mobile, tablet.

Outputs

character_countnumber
How many characters of HTML came back
htmltext
The page's full HTML
urltext
The page that was read
Example output
{
  "character_count": 108,
  "html": "<html><head><title>Aeropress Go</title></head><body><h1>Aeropress Go</h1><p class=\"price\">$39.95</p></body></html>",
  "url": "https://example.com/product"
}

Get part of a page

Load a web page and return only the part a CSS selector matches: a price, a headline, a table. Saves a later step from sifting through the whole page.

Inputs

Page URLurltextRequired
The web page to load, starting with http:// or https://.
CSS selectorselectortextRequired
The part of the page to return, written as a CSS selector. If you can highlight it in a browser's inspector, this is what it shows you.
Render JavaScriptrender_javascripttrue/false
Leave this on so pages that draw their content with JavaScript come back complete. Turn it off for plain HTML pages; it is faster and costs fewer credits.Default: true.
Wait for elementwait_fortext
Optional. A CSS selector to wait for before reading the page. Use it when the part you need appears a moment after the rest of the page.
Proxy typeproxytext
Optional. How to route the visit when a site turns automated traffic away. Each step up costs more credits, so move up only if the page comes back blocked. Standard is used when this is left empty.One of: datacenter (Standard — fastest and cheapest), residential (Residential — for sites that block data centres), stealth (Stealth — for sites with the strongest bot protection).
Visit fromcountrytext
Optional. Visit the page from this country. Useful for sites that show different prices, stock or content by region. Defaults to the United States.One of: us (United States), gb (United Kingdom), de (Germany), it (Italy), fr (France), ca (Canada), es (Spain), ru (Russia), jp (Japan), kr (South Korea), and 3 more.
Devicedevicetext
Optional. Which kind of device to visit as. Pick Mobile to get the mobile version of a page. Defaults to Desktop.One of: desktop, mobile, tablet.

Outputs

character_countnumber
How many characters of HTML came back
htmltext
The HTML of what the selector matched
selectortext
The CSS selector that was matched
urltext
The page that was read
Example output
{
  "character_count": 27,
  "html": "<p class=\"price\">$39.95</p>",
  "selector": ".price",
  "url": "https://example.com/product"
}

Get several parts of a page

Load a web page once and return what each of several CSS selectors matched, kept separate and in the order you listed them. One visit instead of one per field.

Inputs

Page URLurltextRequired
The web page to load, starting with http:// or https://.
CSS selectorsselectorslistRequired
The parts of the page to return, as CSS selectors. Up to 20; each one comes back with everything it matched.
Render JavaScriptrender_javascripttrue/false
Leave this on so pages that draw their content with JavaScript come back complete. Turn it off for plain HTML pages; it is faster and costs fewer credits.Default: true.
Wait for elementwait_fortext
Optional. A CSS selector to wait for before reading the page. Use it when the part you need appears a moment after the rest of the page.
Proxy typeproxytext
Optional. How to route the visit when a site turns automated traffic away. Each step up costs more credits, so move up only if the page comes back blocked. Standard is used when this is left empty.One of: datacenter (Standard — fastest and cheapest), residential (Residential — for sites that block data centres), stealth (Stealth — for sites with the strongest bot protection).
Visit fromcountrytext
Optional. Visit the page from this country. Useful for sites that show different prices, stock or content by region. Defaults to the United States.One of: us (United States), gb (United Kingdom), de (Germany), it (Italy), fr (France), ca (Canada), es (Spain), ru (Russia), jp (Japan), kr (South Korea), and 3 more.
Devicedevicetext
Optional. Which kind of device to visit as. Pick Mobile to get the mobile version of a page. Defaults to Desktop.One of: desktop, mobile, tablet.

Outputs

match_countnumber
How many elements matched in total
matcheslist
One row per selector, in the order given
selectorslist
The selectors that were asked for, in order
urltext
The page that was read
Example output
{
  "match_count": 2,
  "matches": [
    {
      "html": [
        "<h1>Aeropress Go</h1>"
      ],
      "match_count": 1,
      "selector": "h1"
    },
    {
      "html": [
        "<p class=\"price\">$39.95</p>"
      ],
      "match_count": 1,
      "selector": ".price"
    }
  ],
  "selectors": [
    "h1",
    ".price"
  ],
  "url": "https://example.com/product"
}

Search Google

Run a Google search and get the results back as a list: position, title, link and snippet. Feed the links into the page actions to read what they point at.

Inputs

SearchquerytextRequired
What to search for, exactly as you would type it into Google.
Search fromcountrytext
Optional. Search as if from this country. Defaults to the United States.One of: af (Afghanistan), ax (Åland Islands), al (Albania), dz (Algeria), as (American Samoa), ad (Andorra), ao (Angola), ai (Anguilla), aq (Antarctica), ag (Antigua and Barbuda), and 239 more.
Results languagelanguagetext
Optional. Ask Google for results in this language. Defaults to English.One of: af (Afrikaans), sq (Albanian), am (Amharic), ar (Arabic), az (Azerbaijani), eu (Basque), be (Belarusian), bn (Bengali), bs (Bosnian), bg (Bulgarian), and 72 more.
Pagepagenumber
Which page of results to return, ten per page. 1 is the first page.At least 1. Default: 1.

Outputs

countrytext
The country the search was run from
languagetext
The language the results were asked for in
next_pagenumber
The next page number to ask for, or 0 if this is the last page
pagenumber
Which page of results these are
querytext
The search that was run
result_countnumber
How many results came back
resultslist
The organic results, best first
Example output
{
  "country": "us",
  "language": "en",
  "next_page": 2,
  "page": 1,
  "query": "best travel coffee press",
  "result_count": 2,
  "results": [
    {
      "displayed_link": "example.com",
      "link": "https://example.com/best-travel-coffee-presses",
      "position": 1,
      "snippet": "We brewed 240 cups on the road to find the presses worth the luggage space.",
      "title": "The 6 Best Travel Coffee Presses of 2026"
    },
    {
      "displayed_link": "example.org",
      "link": "https://example.org/aeropress-go-review",
      "position": 2,
      "snippet": "A full cup in a minute, in a mug that packs itself.",
      "title": "Aeropress Go review"
    }
  ]
}

On this page