diff --git a/README.md b/README.md index 9dd2bb8..1f7180f 100644 --- a/README.md +++ b/README.md @@ -36,13 +36,13 @@ that endpoint with extraction parameters, not a separate product. | Command | What it does | Status (this build) | | --- | --- | --- | -| `zenrows fetch` | Fetch — retrieve a protected page | **available** — `GET https://api.zenrows.com/v1/` | -| `zenrows extract` | Extract: `extract=auto` (any prepared domain; falls back to Autoparse on one not prepared yet), CSS, or Markdown | **available**: same `/v1/` | -| `zenrows batch` | Batch: fan out over many URLs | **available**: `https://async.api.zenrows.com/v1`; local validate/estimate need no key | -| `zenrows crawl` | Crawl (new) — collect the URLs behind one start page, optionally with each page's HTML | **available** — `https://api.zenrows.com/v1/crawls` | -| `zenrows browser` | Browser Sessions REST API (same backend as MCP `browser_*`) | **available** — escalation-only; bills by bandwidth + time | -| `zenrows mcp` | MCP server config (remote + local) | **available** | -| Zenrows CLI | this repo | **available** | +| `zenrows fetch` | Fetch: retrieve a protected page | **available**: `GET https://api.zenrows.com/v1/` | +| `zenrows extract` | Extract: turn a page into structured data with `extract=auto` on any prepared domain (falls back to Autoparse on one not prepared yet), CSS selectors, or Markdown | **available**: `GET https://api.zenrows.com/v1/?extract=auto` | +| `zenrows batch` | Batch: run Fetch and Extract over many URLs in one job; specs validate and estimate locally with no key | **available**: `POST https://async.api.zenrows.com/v1/jobs` | +| `zenrows crawl` | Crawl (new): collect the URLs behind one start page, optionally with each page's HTML | **available**: `POST https://api.zenrows.com/v1/crawls` | +| `zenrows browser` | Browser Sessions: a real cloud browser over REST (same backend as MCP `browser_*`); escalation-only, billed by bandwidth + time | **available**: `POST https://mcp.zenrows.com/browser/sessions` | +| `zenrows mcp` | MCP: set up the Zenrows MCP server in your client, remote or local | **available**: `https://mcp.zenrows.com/mcp` | +| `zenrows` | CLI: this repo, the commands above, plus skills and templates | **available**: `npm install -g @zenrows/cli` | The CLI maintains a **capability matrix** (`registry/capabilities.json`). Every command checks status before any cloud call, so the toolkit never fakes behavior @@ -55,7 +55,7 @@ matrix. npm install -g @zenrows/cli # puts `zenrows` on PATH (466 ms, zero deps) zenrows init zenrows fetch https://httpbin.io/html # auto-provisions a Free plan account on first use -zenrows extract https://www.owler.com/company/meltwater # extract=auto on an enabled domain +zenrows extract https://www.owler.com/company/meltwater # extract=auto on a prepared domain zenrows extract https://www.scrapingcourse.com/ecommerce/ --autoparse # Autoparse (any domain) ``` @@ -116,7 +116,7 @@ zenrows fetch --proxy-country us --wait-for ".price" ## 8. Extract ```bash -zenrows extract https://www.owler.com/company/meltwater # extract=auto (enabled domain) +zenrows extract https://www.owler.com/company/meltwater # extract=auto (prepared domain) zenrows extract https://www.scrapingcourse.com/ecommerce/ --autoparse # Autoparse (any domain) zenrows extract --css '{"title":"h1","price":".price"}' --validate zenrows extract --outputs emails,links # built-in output filters → JSON diff --git a/skills/zenrows/SKILL.md b/skills/zenrows/SKILL.md index fe09702..c782a36 100644 --- a/skills/zenrows/SKILL.md +++ b/skills/zenrows/SKILL.md @@ -71,12 +71,17 @@ Run `zenrows status` for the live capability matrix. As of this toolkit: | Primitive | Command | Status | | --- | --- | --- | -| Protected Fetch | `zenrows fetch` | available (`GET /v1/`) | -| Extract (extract=auto / Autoparse/CSS/Markdown) | `zenrows extract` | available (same `/v1/`; extract=auto falls back to autoparse) | -| Batch | `zenrows batch` | available: runs cloud jobs (create/status/results); cheapest path at scale. Estimate specs locally with no key | -| Crawl | `zenrows crawl` | new — collect the URLs behind one start page, optionally with each page's HTML | -| Browser | `zenrows browser` | available (Browser Sessions REST API / MCP) | -| MCP | `zenrows mcp` | available (remote + local server) | +| Protected Fetch | `zenrows fetch` | **available**: `GET https://api.zenrows.com/v1/` | +| Extract (`extract=auto`, Autoparse, CSS, Markdown) | `zenrows extract` | **available**: `GET https://api.zenrows.com/v1/?extract=auto` | +| Batch | `zenrows batch` | **available**: `POST https://async.api.zenrows.com/v1/jobs` | +| Crawl (new) | `zenrows crawl` | **available**: `POST https://api.zenrows.com/v1/crawls` | +| Browser | `zenrows browser` | **available**: `POST https://mcp.zenrows.com/browser/sessions` | +| MCP | `zenrows mcp` | **available**: `https://mcp.zenrows.com/mcp` | + +- Extract: `extract=auto` falls back to Autoparse on a domain not prepared yet. +- Batch: the cheapest path at scale (create, status, results). Estimate specs locally with no key. +- Crawl: collects the URLs behind one start page, optionally with each page's HTML. +- Browser: escalation-only, for pages Fetch can't handle; same backend as the MCP `browser_*` tools. Protected Fetch and Extract are the same API (`GET /v1/`) used two ways. The command consults the capability matrix before any cloud call — it never