universal-scraping-architect

Build validated web scraping and data extraction pipelines using Firecrawl or local Python scripts.

Updated Aug 14, 2026
One-click install
npx skills add https://github.com/Rohithdgrr/REEK-uninstaller --skill universal-scraping-architect-rohithdgrr
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: universal-scraping-architect
Source: https://github.com/Rohithdgrr/REEK-uninstaller/tree/main/.opencode/skills/universal-scraping-architect
Command: npx skills add https://github.com/Rohithdgrr/REEK-uninstaller --skill universal-scraping-architect-rohithdgrr

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires firecrawl, requests, beautifulsoup4, pandas, and includes scripts (resource) and references (resource) components.

What problem does it solve? One-off scraping scripts break easily, leak API keys, ignore robots.txt, and ship unvalidated data. This Skill designs complete extraction pipelines with intelligent routing between API-driven and local approaches, built-in validation, and token-budget tracking. ## Core Features & Use Cases - Three Extraction Modes: Route between Firecrawl API (dynamic JS sites, bulk crawling), local Python with BeautifulSoup/pandas (private files, static pages), or a hybrid pipeline combining both. - Mandatory Validation Gate: Every extraction result passes through a stdlib JSON validator and required-field checks before delivery, so empty or malformed data never ships. - Safety & Ethics Built In: Enforces robots.txt checks, rate limiting, environment-variable API keys, and flags privacy risks when sensitive local data might be sent to external APIs. - Use Case: Ask to scrape a product catalog across hundreds of pages and receive a checkpointed Python script with pagination, retry logic, and a validated CSV output. ## Quick Start Ask the agent to scrape a target URL or extract a table from a webpage and deliver the result as a validated CSV or JSON file.

Frequently Asked Questions about universal-scraping-architect

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I scrape a website with Python and validate the output?▼

Use the local BeautifulSoup example script to fetch the page with retries, parse the target table with pandas, normalize columns to snake_case, and validate required fields before saving to CSV. Run validate_extraction.py on JSON outputs to confirm they are well-formed and non-empty.

When should I use Firecrawl vs BeautifulSoup for web scraping?▼

Use Firecrawl for public URLs, JavaScript-heavy SPAs, search-first discovery, or bulk domain crawling. Use local BeautifulSoup with pandas for static HTML pages, local files like PDF or Excel, and private data that should never leave your machine.

How do I avoid hardcoding my Firecrawl API key in scripts?▼

Load the key with os.getenv("FIRECRAWL_API_KEY") and never commit it to source control. The scripts fail fast with a clear error if the environment variable is missing, and the key value is never written to logs.

Does this scraping approach respect robots.txt and rate limits?▼

Yes, both example scripts check robots.txt using the Python stdlib urllib.robotparser before fetching and abort if the path is disallowed. They also send an identifying User-Agent, use timeouts, and retry with exponential backoff.

Why does my scraped data fail validation before saving?▼

Validation fails when the extracted JSON is malformed, the result set is empty, or required columns are missing from the parsed table. Fix the selector or extraction logic and re-run rather than shipping unvalidated data.