← Browse

@shobcoder/web-scraper

A

Scrape, crawl, and extract data from websites. Use when users ask to scrape web pages, extract content, crawl websites, or collect data from the internet.

skillclaude

Install

agr install @shobcoder/web-scraper --target claude

Writes 1 file into .claude/skills/, pinned to git-a28bb33f.

  • .claude/skills/web-scraper/SKILL.md

Document


name: web-scraper description: Scrape, crawl, and extract data from websites. Use when users ask to scrape web pages, extract content, crawl websites, or collect data from the internet.

Web Scraper

Overview

Extract content and data from websites using various techniques including crawling, scraping, and structured data extraction.

When to Use

  • Extract text content from web pages
  • Crawl entire websites
  • Collect structured data
  • Research and gather information
  • Monitor website changes
  • Extract tables and lists

Tools Available

Content Extraction

// Use extract_content_from_websites for structured extraction
// Supports batch processing of multiple URLs
// Returns JSON format with extracted content

Task Format

{
    tasks: [
        {
            url: "https://example.com",
            prompt: "Extract specific information",
            task_name: "optional_name"
        }
    ]
}

Usage Patterns

Simple Content Extraction

// Extract main content from a page
const result = await extract_content_from_websites({
    tasks: [{
        url: "https://news.example.com/article",
        prompt: "Extract the title, author, date, and main content"
    }]
});

Batch URL Processing

// Process multiple URLs in parallel
const urls = [
    "https://site.com/page1",
    "https://site.com/page2",
    "https://site.com/page3"
];

const results = await extract_content_from_websites({
    tasks: urls.map((url, i) => ({
        url,
        prompt: "Extract all product information, prices, and descriptions",
        task_name: `product_${i}`
    }))
});

Data Mining

// Extract structured data like prices, reviews, specifications
const data = await extract_content_from_websites({
    tasks: [{
        url: "https://ecommerce.example.com/products",
        prompt: "Extract product name, price, rating, and availability for all products listed"
    }]
});

Extraction Modes

Auto Mode (Default)

  • Attempts HTTP GET first
  • Falls back to browser rendering for CSR pages
  • Best for most websites

Curl Only Mode

  • Fast direct HTTP requests
  • Best for static HTML pages
  • May fail on JavaScript-heavy sites

Browser Only Mode

  • Full browser rendering
  • Handles dynamic content
  • Slower but more comprehensive

Best Practices

  1. Start with simpler extraction before complex patterns
  2. Use specific prompts for targeted data
  3. Respect website terms of service
  4. Add delays between requests when scraping multiple pages
  5. Handle errors gracefully with try/catch

Data Handling

  • Returns JSON format for easy processing
  • Handles batch operations efficiently
  • Supports pagination when needed
  • Maintains data structure in results

Trustgrade A

  • passBody integrity

    Whether the stored document is plausibly the kind of file the artifact declares, rather than something fetched by mistake.

  • passType matchnot applicable to this artifact type

    Whether the artifact is really the kind of thing its metadata claims it is.

  • passFreshness

    How long since the source repository was last pushed to.

  • passPrompt injection

    Scans the artifact's own text for instructions aimed at your agent rather than at you.

  • passLicense

    Whether the source repository declares an SPDX license permissive enough to redistribute.

How the grade is calculated

Each check contributes 0 points when it passes, 1 when it warns, and 2 when it fails. The total maps to a letter:

  • Aevery check passed
  • Bone warning
  • Ctwo warnings
  • Dprompt injection or body integrity failed, or three warnings
  • Fone of those failed, and something else is wrong

These are automated hygiene checks, not a security audit, and not a dependency or vulnerability scan. A grade of A means nothing was flagged — not that the artifact is safe.

Versions

  • git-a28bb33f53a92026-07-31