By ScrapeOps
ScrapeOps AI Scraper Builder — generate and fix production-ready scrapers for any website using AI
Use this skill when the user wants to fix, correct, update, refactor, or extend an existing local scraper or parser file. This includes adding, removing, or changing fields/selectors in a scraper. Trigger when the user says things like "fix scraper", "repair scraper", "update scraper", "add field", "add a new field", "add X field to the scraper", "field is empty", "field is missing", "field is wrong", "scraper is broken", "scraper not working", "fix parser", "parser is broken", "change the selector", "extract X too", "also scrape X", or any request to modify an existing scraper/parser file — in any language.
Use this skill to build a data-extraction schema JSON file that tells ScrapeOps what fields to extract. Trigger on phrases like "generate schema", "create schema", "data schema for X", "schema for crawler", "build a schema". Also invoked programmatically by other skills (e.g. generate-crawler-scraper) — in that case the args target_page_type, user_description, and output_path are passed in. The output is a JSON file in the Go backend's expected shape (fields with type, required, priority_level, null_value, description), ready to be sent via schema_json in scrapeops_submit_job. Do NOT trigger for requests to generate actual scraper code (use generate-scraper or generate-crawler-scraper instead).
Use this skill ONLY when the user explicitly asks to generate, build, create, or write a scraper/parser for SPECIFIC URLs they already have. Trigger phrases: "generate scraper", "build scraper", "make scraper", "new scraper", "create a scraper", "write a scraper", "I need a scraper", "generate a scraper for", "build a scraper for", "create scraper for". Do NOT trigger for generic requests like "fetch this page", "download HTML", "get the content of this URL", "scrape this" (without mentioning scraper/parser), or any request that is not specifically about generating a reusable scraper file. IMPORTANT: Do NOT trigger if the user mentions "crawler" anywhere in their request — use the generate-crawler-scraper skill instead. If the request mentions "crawler", "crawler + scraper", "crawler-scraper", "crawl", "search for X on site Y", "busca", "buscando", or describes discovering/collecting product URLs from a listing page, use generate-crawler-scraper, NOT this skill.
Configure the ScrapeOps plugin. Use when the user asks to "configure scrapeops", "setup scrapeops", "set api key", "set scrapeops key", "scrapeops config", or when a ScrapeOps skill reports that the API key is missing.
Admin access level
Server config contains admin-level keywords
Uses power tools
Uses Bash, Write, or Edit tools
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Generate and fix production-ready web scrapers for any website using AI, directly from Claude Code.
/generate-scraper — Tell Claude which website you want to scrape. It handles everything: fetches the page, analyzes the structure, generates the parser, runs it, and saves the output locally./fix-scraper — Have a broken scraper? Point Claude at your parser file and an HTML page. It diagnoses the issue, fixes the selectors, and validates the output — autonomously, without you writing a single line./generate-crawler-scraper — Describe a site and a search ("crawler on Amazon searching for mens t-shirts"). Claude discovers the search URL locally, generates a slim crawler that discovers product URLs, generates a detailed product scraper, and saves both as standalone files plus a README with run instructions. Supports standard scrapers (BeautifulSoup / Cheerio / etc.) and full Scrapy projects. Typically takes 15–30 minutes.Supported languages: Python (BeautifulSoup, Playwright, Selenium), JavaScript (Cheerio, Playwright, Puppeteer), PHP, Ruby, Go, Rust, Java, C#.
Before installing, make sure you have:
git clone https://github.com/ScrapeOps/scrapeops-scraping-assistant-claude-plugin.git
cd scrapeops-scraping-assistant-claude-plugin
./setup.sh
This installs the skills, agents, and MCP server into your Claude Code configuration.
Close and reopen Claude Code to activate everything.
Open Claude Code and run /generate-scraper or /fix-scraper. If your API key isn't configured yet, Claude will ask for it automatically on the first run — no extra setup step needed. Your key is saved locally in ~/.claude/settings.json and never leaves your machine.
You can also configure or update your key at any time with /scrapeops-setup.
/generate-scraper
Claude will ask you:
Then it submits the job, waits for the AI pipeline to finish, downloads the generated parser, runs it against the real page, and saves everything locally.
Example conversation:
You: /generate-scraper
Claude: Which language do you want the scraper in?
You: Python
Claude: Which Python library?
You: BeautifulSoup
Claude: Paste 1–5 URLs from the target website.
You: https://books.toscrape.com/catalogue/a-light-in-the-attic_1000/index.html
Claude: [generates and saves books_toscrape_com_scraper.py + test HTML + output JSON]
Files saved after generation:
| File | Description |
|---|---|
<domain>_scraper.py | The generated parser |
<domain>_data/page_1.html | The HTML used during generation |
<domain>_data/output_1.json | The extracted data |
/fix-scraper
Claude scans your current directory for parser and HTML files, asks what needs fixing, and runs an autonomous fix loop until the output is correct.
Example conversation:
You: /fix-scraper — the price field is coming back empty
Claude: Found books_toscrape_com_scraper.py and page_1.html. I'll fix the price field.
[diagnoses, edits selectors, re-runs, validates]
Done. Price is now extracted correctly.
Claude can also fetch a live page if you don't have an HTML file locally — just provide the URL.
/fix-scraper when a specific field is wrong or empty. Use /generate-scraper again if the page layout changed significantly./scrapeops-setup at any time to see your current configuration or update your API key.To update to the latest version:
cd /path/to/scrapeops-scraping-assistant-claude-plugin
# 1. Uninstall the old version
./setup.sh --uninstall
# 2. Pull the latest changes
git pull origin main
# 3. Reinstall
./setup.sh
# 4. Restart Claude Code
Your API key in ~/.claude/settings.json is preserved — no need to reconfigure.
You can also run it as a single command:
./setup.sh --uninstall && git pull origin main && ./setup.sh
npx claudepluginhub scrapeops/scrapeops-scraping-assistant-claude-plugin --plugin scrapeops-scraping-assistant-claude-pluginUltra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.
Comprehensive UI/UX design plugin for mobile (iOS, Android, React Native) and web applications with design systems, accessibility, and modern patterns
Memory compression system for Claude Code - persist context across sessions
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.
Multi-model consensus engine integrating OpenAI Codex CLI, Gemini CLI, and Claude CLI for collaborative code review and problem-solving.
Streamline people operations — recruiting, onboarding, performance reviews, compensation analysis, and policy guidance. Maintain compliance and keep your team running smoothly.