Loading source
Pulling the file list, source metadata, and syntax-aware rendering for this listing.
Source from repo
Extract clean LLM-optimized markdown from any URL including JavaScript-rendered SPAs, with support for multiple concurrent URLs.
Files
Skill
Size
Entrypoint
Format
Open file
Syntax-highlighted preview of this file as included in the skill package.
SKILL.md
1---2name: firecrawl-scrape3description: |4Extract clean markdown from any URL, including JavaScript-rendered SPAs. Use this skill whenever the user provides a URL and wants its content, says "scrape", "grab", "fetch", "pull", "get the page", "extract from this URL", or "read this webpage". Handles JS-rendered pages, multiple concurrent URLs, and returns LLM-optimized markdown. Use this instead of WebFetch for any webpage content extraction.5allowed-tools:6- Bash(firecrawl *)7- Bash(npx firecrawl *)8---910# firecrawl scrape1112Scrape one or more URLs. Returns clean, LLM-optimized markdown. Multiple URLs are scraped concurrently.1314## When to use1516- You have a specific URL and want its content17- The page is static or JS-rendered (SPA)18- Step 2 in the [workflow escalation pattern](firecrawl-cli): search → **scrape** → map → crawl → interact1920## Quick start2122```bash23# Basic markdown extraction24firecrawl scrape "<url>" -o .firecrawl/page.md2526# Main content only, no nav/footer27firecrawl scrape "<url>" --only-main-content -o .firecrawl/page.md2829# Wait for JS to render, then scrape30firecrawl scrape "<url>" --wait-for 3000 -o .firecrawl/page.md3132# Multiple URLs (each saved to .firecrawl/)33firecrawl scrape https://example.com https://example.com/blog https://example.com/docs3435# Get markdown and links together36firecrawl scrape "<url>" --format markdown,links -o .firecrawl/page.json3738# Ask a question about the page39firecrawl scrape "https://example.com/pricing" --query "What is the enterprise plan price?"40```4142## Options4344| Option | Description |45| ------------------------ | ---------------------------------------------------------------- |46| `-f, --format <formats>` | Output formats: markdown, html, rawHtml, links, screenshot, json |47| `-Q, --query <prompt>` | Ask a question about the page content (5 credits) |48| `-H` | Include HTTP headers in output |49| `--only-main-content` | Strip nav, footer, sidebar — main content only |50| `--wait-for <ms>` | Wait for JS rendering before scraping |51| `--include-tags <tags>` | Only include these HTML tags |52| `--exclude-tags <tags>` | Exclude these HTML tags |53| `-o, --output <path>` | Output file path |5455## Tips5657- **Prefer plain scrape over `--query`.** Scrape to a file, then use `grep`, `head`, or read the markdown directly — you can search and reason over the full content yourself. Use `--query` only when you want a single targeted answer without saving the page (costs 5 extra credits).58- **Try scrape before interact.** Scrape handles static pages and JS-rendered SPAs. Only escalate to `interact` when you need interaction (clicks, form fills, pagination).59- Multiple URLs are scraped concurrently — check `firecrawl --status` for your concurrency limit.60- Single format outputs raw content. Multiple formats (e.g., `--format markdown,links`) output JSON.61- Always quote URLs — shell interprets `?` and `&` as special characters.62- Naming convention: `.firecrawl/{site}-{path}.md`6364## See also6566- [firecrawl-search](../firecrawl-search/SKILL.md) — find pages when you don't have a URL67- [firecrawl-interact](../firecrawl-interact/SKILL.md) — when scrape can't get the content, use `interact` to click, fill forms, etc.68- [firecrawl-download](../firecrawl-download/SKILL.md) — bulk download an entire site to local files69