Scrape webpage content, extract metadata, download images, and prepare for import/migration to AEM Edge Delivery Services. Returns analysis JSON with paths, metadata, cleaned HTML, and local images.
Extract content, metadata, and images from a webpage for import/migration.
Use this skill when:
Invoked by: page-import skill (Step 1)
Before using this skill, ensure:
npm install playwright)npx playwright install chromium)cd .claude/skills/scrape-webpage/scripts && npm install)Command:
node .claude/skills/scrape-webpage/scripts/analyze-webpage.js "https://example.com/page" --output ./import-work
What the script does:
For detailed explanation: See resources/web-page-analysis.md
Output files:
./import-work/metadata.json - Complete analysis with paths and image mapping./import-work/screenshot.png - Visual reference for layout comparison./import-work/cleaned.html - Main content HTML with local image paths./import-work/images/ - All downloaded images (WebP/AVIF/SVG converted to PNG)Verify files exist:
ls -lh ./import-work/metadata.json ./import-work/screenshot.png ./import-work/cleaned.html
ls -lh ./import-work/images/ | head -5
Output JSON structure:
{
"url": "https://example.com/page",
"timestamp": "2025-01-12T10:30:00.000Z",
"paths": {
"documentPath": "/us/en/about",
"htmlFilePath": "us/en/about.plain.html",
"mdFilePath": "us/en/about.md",
"dirPath": "us/en",
"filename": "about"
},
"screenshot": "./import-work/screenshot.png",
"html": {
"filePath": "./import-work/cleaned.html",
"size": 45230
},
"metadata": {
"title": "Page Title",
"description": "Page description",
"og:image": "https://example.com/image.jpg",
"canonical": "https://example.com/page"
},
"images": {
"count": 15,
"mapping": {
"https://example.com/hero.jpg": "./images/a1b2c3d4e5f6.jpg",
"https://example.com/logo.webp": "./images/f6e5d4c3b2a1.png"
},
"stats": {
"total": 15,
"converted": 3,
"skipped": 12,
"failed": 0
}
}
}
Key fields:
paths.documentPath - Used for browser preview URLpaths.htmlFilePath - Where to save final HTML fileimages.mapping - Original URLs → local pathsmetadata - Extracted page metadataThis skill provides:
Next step: Pass these outputs to identify-page-structure skill
Browser not installed:
npx playwright install chromium
Sharp not installed:
cd .claude/skills/scrape-webpage/scripts && npm install
Image download failures:
Lazy-loaded images not captured:
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer