dribl-crawling

Crawl Dribl clubs and fixtures by intercepting API responses.

1|Updated Nov 10, 2025
One-click install
npx skills add https://github.com/dejanvasic85/williamstownsc --skill dribl-crawling
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dribl-crawling
Source: https://github.com/dejanvasic85/williamstownsc/tree/main/.claude/skills/dribl-crawling
Command: npx skills add https://github.com/dejanvasic85/williamstownsc --skill dribl-crawling

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires playwright-core, zod, tsx, typescript.

What problem does it solve?

Automates extraction and synchronization of Dribl clubs and fixtures data for Williamstown SC by capturing raw API data from a protected SPA and validating/merging it into internal records.

Core Features & Use Cases

  • Extraction & Interception: Catches API responses during browser automation to obtain raw club and fixture data.
  • Transformation & Validation: Uses Zod schemas to validate external data and convert it into internal club and fixture formats.
  • Data Synchronization: Merges new data with existing records, deduplicates, and sorts results for reliable downstream consumption.

Quick Start

Run the Dribl crawling workflow to extract clubs and fixtures data from the Dribl pages and output validated, merged records for Williamstown SC.

Frequently Asked Questions about dribl-crawling

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

FAQPage Schema
How do I scrape data from a Cloudflare-protected single page application?

To scrape data from a Cloudflare-protected SPA, you can simulate a real browser session using Playwright to intercept and capture raw API responses. This approach bypasses bot protection by acting as a real user.

How do I validate intercepted API response data before merging records?

You can validate intercepted API response data using Zod schemas to enforce data structure rules before transforming it. This ensures the external payload matches your internal format and prevents invalid records from merging.

What is the best way to keep sports fixture data up to date automatically?

The best way to keep sports fixture data up to date is to automate browser-based extraction, validate the raw API payloads, and synchronize the results by merging and deduplicating them with existing internal records.

Can I use Playwright to intercept and extract API responses instead of HTML parsing?

Yes, you can use Playwright to intercept network requests and extract raw API responses directly. This method is highly effective for SPAs where data is loaded dynamically, avoiding complex HTML parsing entirely.

Do I need TypeScript to run web scraping workflows with Zod validation?

You need TypeScript and a tsx runner to execute web scraping workflows that use Zod schemas for validation. This environment provides the type safety required to reliably transform and merge external data.

How does data synchronization handle duplicate fixture entries?

Data synchronization handles duplicate fixture entries by merging newly extracted data with existing records and deduplicating the results. This process sorts the final output for reliable downstream consumption.