scrape-structured-web-data

Build Playwright scrapers that extract structured JSON from dynamic websites.

9|3|Updated Jun 13, 2026
One-click install
npx skills add https://github.com/Sir-chawakorn/sanook-cli --skill scrape-structured-web-data
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: scrape-structured-web-data
Source: https://github.com/Sir-chawakorn/sanook-cli/tree/main/skills/scrape-structured-web-data
Command: npx skills add https://github.com/Sir-chawakorn/sanook-cli --skill scrape-structured-web-data

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill solves the fragility and complexity of web scraping by providing a structured, Playwright-based framework that handles dynamic content, authentication, and data validation without the common pitfalls of brittle selectors or flaky timeouts.

Core Features & Use Cases

  • Dynamic Content Handling: Extracts data from JS-rendered sites, infinite-scroll pages, and complex authentication flows.
  • Schema-Driven Extraction: Ensures output conforms to strict JSON or CSV schemas, automatically flagging or rejecting malformed data.
  • Resilient Execution: Implements automatic retries, exponential backoff, and state persistence to ensure scrapers are resumable and reliable.

Quick Start

Use the scrape-structured-web-data skill to extract product listings from the target e-commerce site into a validated JSON file.

Frequently Asked Questions about scrape-structured-web-data

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

FAQPage Schema
How do I extract structured JSON from dynamic websites with Playwright?

You can extract structured JSON from dynamic websites by building Playwright-based scrapers that interact with JS-rendered DOM elements, enforce strict schema validation, and output validated JSON files. This approach handles dynamic content while ensuring the extracted data conforms to your required structure.

What is the best way to handle authentication and pagination when web scraping?

The best way to handle authentication and pagination during web scraping is using a framework that supports stable DOM interaction and resumable execution flows. This allows your scraper to maintain session states across authenticated pages and navigate through paginated content reliably without losing progress.

How do I validate scraped web data against a strict JSON schema?

You validate scraped web data against a strict JSON schema by using schema-driven extraction libraries like Zod that enforce data contracts. This mechanism automatically flags or rejects malformed data during the scraping process, ensuring your output conforms to defined JSON or CSV schemas.

Why does my web scraper fail with flaky timeouts and brittle selectors?

Web scrapers fail with flaky timeouts and brittle selectors due to fragile DOM interactions on dynamic sites. You can resolve this by implementing resilient execution patterns like automatic retries, exponential backoff, and state persistence to ensure scrapers remain resumable and reliable.

Do I need Playwright and Zod to build resilient web scrapers?

Yes, you need Playwright for browser automation to render dynamic content and a library like Zod for strict data contract enforcement. These dependencies are required to build scrapers that handle complex web environments with stable DOM interaction and schema validation.

Can I resume a web scraping job after it crashes or times out?

Yes, you can resume a web scraping job after a crash by implementing state persistence alongside automatic retries and exponential backoff. This resilient execution design ensures your scraper saves its progress and can resume execution flows without restarting the entire extraction process.