Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
starchild-ai-agent avatar

Web Crawler

  • 1 installs
  • 1 repo stars
  • Updated July 29, 2026
  • starchild-ai-agent/community-skills

Playwright headless browser for crawling JS-heavy sites, taking screenshots, clicking elements, extracting text, and running breadth-first UX/accessibility audits.

About

Runs a Playwright-based headless browser to screenshot pages, click elements, extract text/links, and perform a breadth-first site audit with accessibility checks. A developer uses it to audit a website's UX, test interaction flows, or extract content from SPAs.

  • --audit mode crawls internal pages and generates audit.md
  • Handles SPAs, console errors, and accessibility checks (alt, labels, h1/lang)

Web Crawler by the numbers

  • 1 all-time installs (skills.sh)
  • Ranked #1,750 of 2,153 Testing & QA skills by installs in the Skillselion catalog
  • Data as of Jul 30, 2026 (Skillselion catalog sync)
npx skills add https://github.com/starchild-ai-agent/community-skills --skill web-crawler

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs1
repo stars1
Last updatedJuly 29, 2026
Repositorystarchild-ai-agent/community-skills

What it does

Playwright headless browser for crawling JS-heavy sites, taking screenshots, clicking elements, extracting text, and running breadth-first UX/accessibility audits.

Files

SKILL.mdMarkdownGitHub ↗

Web Crawler

Playwright-based headless browser for crawling JavaScript-heavy sites, taking screenshots, clicking buttons, and running UX audits. Works on SPAs, auth-walled pages, and anything that needs a real browser.

Quick Reference

Single page screenshot

python3 skills/web-crawler/scripts/crawl.py https://example.com

Full UX audit (crawls all internal pages)

python3 skills/web-crawler/scripts/crawl.py https://example.com --audit --max-pages 30

Click a button and screenshot result

python3 skills/web-crawler/scripts/crawl.py https://example.com --click "button.cta"

Click all nav links sequentially

python3 skills/web-crawler/scripts/crawl.py https://example.com --click-all "nav a"

Extract all text (good for SPAs)

python3 skills/web-crawler/scripts/crawl.py https://example.com --extract-text

Output Structure

output/crawl-{domain}/
├── screenshots/     # PNG screenshots per page
├── pages/           # Extracted text per page
├── report.json      # Structured crawl data
└── audit.md         # Readable audit report (--audit mode)

Audit Mode

--audit runs a breadth-first crawl of all internal pages:

  • Screenshots every page
  • Extracts all links (internal + external)
  • Captures console errors
  • Runs accessibility checks (missing alt, unlabeled buttons, missing h1/lang)
  • Maps all clickable elements (buttons, links, interactive elements)
  • Generates audit.md with findings

Key Options

FlagDefaultWhat it does
--auditoffFull site audit mode
--max-pages N20Max pages to crawl in audit
--full-pageoffFull-page screenshots vs viewport
--click SELClick CSS selector, screenshot result
--click-all SELClick all matching elements
--extract-linksoffExtract all <a> hrefs
--extract-textoffExtract visible text
--console-logoffCapture console messages
--wait SEC2Wait after page load
--viewport WxH1440x900Browser viewport
--timeout SEC30Navigation timeout

Workflow for UX Audit

1. Run --audit on the target site 2. Read audit.md for the summary 3. Check report.json for structured data (clickables, links, console errors) 4. Review screenshots in screenshots/ folder 5. For deeper inspection: re-run single pages with --click to test specific interactions 6. Synthesize findings into actionable UX recommendations

Gotchas

  • SPAs with hash routing: The crawler follows <a href> links. Hash-only routes (#/page) won't be auto-discovered in audit mode. Use --click-all "nav a" instead.
  • Auth-walled sites: Not yet supported. Future: add --cookie support.
  • Rate limiting: The crawler hits pages fast. Add --wait 3 for sensitive sites.
  • Chromium install: First run needs playwright install chromium (~110MB). Persisted in setup.sh.

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.