web-scraper

Extract structured data from web pages using CSS or XPath selectors.

3|2|Updated Feb 27, 2026
One-click install
npx skills add https://github.com/grasberg/sofia --skill web-scraper-grasberg
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: web-scraper
Source: https://github.com/grasberg/sofia/tree/main/workspace/skills/web-scraper
Command: npx skills add https://github.com/grasberg/sofia --skill web-scraper-grasberg

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Web data is abundant but hard to harvest reliably; this skill provides a structured approach to extract data from websites while staying polite to servers and avoiding anti-bot blocks.

Core Features & Use Cases

  • Rule-based selectors: choose CSS or XPath targets to extract titles, prices, links, and metadata.
  • Robust pagination and data gathering: handle next-page patterns, API-like cursors, and infinite scroll with controlled requests.
  • Data cleaning and normalization: normalize text, dates, numbers, and deduplicate results for clean downstream analytics.
  • Use Cases: e-commerce price monitoring, content aggregation, and competitive intelligence pipelines.

Quick Start

Identify a target site, craft selectors, and run the scraper with rate limits to begin extraction.

Frequently Asked Questions about web-scraper

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

FAQPage Schema
How do I extract structured data from web pages using CSS or XPath selectors?

To extract structured data from web pages, you can build a scraping pipeline using rule-based CSS or XPath selectors to target and harvest specific elements like titles, prices, and metadata. This approach ensures accurate data extraction for clean downstream analytics.

What is the best way to handle pagination and infinite scroll when scraping websites?

The best way to handle pagination and infinite scroll when scraping websites is to build a robust pipeline that identifies next-page patterns, API-like cursors, and dynamic rendering. Controlled requests ensure you gather paginated content reliably without triggering anti-bot blocks.

How do I scrape e-commerce product catalogs without getting blocked by anti-bot measures?

You can scrape e-commerce product catalogs without getting blocked by applying rate limiting and controlled request patterns within your extraction pipeline. Staying polite to servers and respecting anti-bot measures ensures reliable data harvesting for price monitoring.

Can I normalize and deduplicate extracted web data for downstream analytics?

Yes, you can normalize and deduplicate extracted web data for downstream analytics. The pipeline includes data cleaning features that normalize text, dates, and numbers, removing duplicate results to produce clean, structured output ready for analysis.

Does web scraping work for extracting data from dynamic content and news feeds?

Web scraping works for extracting data from dynamic content and news feeds by handling dynamic rendering and structured data patterns. The pipeline applies configurable extraction rules to reliably gather content from continuously updated directory listings and feeds.

Why does my web scraper fail on paginated content with rate limits?

Your web scraper may fail on paginated content if it lacks robust rate limiting and proper pagination handling. Extracting data reliably requires controlled requests that respect server limits and correctly process next-page patterns or API-like cursors to avoid blocks.