OpenClaw
Deploy a managed OpenClaw agent in 60 seconds
Launch on Hostinger →
Hermes Agent
Run your Hermes agent, fully managed
Launch on Hostinger →
Hostinger VPS
Spin up a VPS in one click, 20% off
Launch on Hostinger →
Firecrawl
Crawl and scrape any site into clean data
Try Firecrawl free →
Context.dev
One API to scrape, enrich, and extract the web
Start building free →
SetupClaw
Done-for-you OpenClaw for founders and teams
Get it set up for you →
CodeRabbit
AI code reviews for every PR
Try CodeRabbit free →
Your product here
Reach thousands of AI builders a month
Learn more →
Claude Market
Menu
SkillsMCPPluginsMarketplacesNewsletterSubmit MCPSkillPluginMCPMCP, plugin, or skillAdvertise
Claude Market
SkillsMCPPluginsMarketplacesNewsletterSubmit MCPSkillPluginMCPMCP, plugin, or skillAdvertise
Claude Market/OpenClaw Skills/codylrn804/Crawl4ai
Crawl4ai logo

Crawl4ai

codylrn804/crawl4ai
Run it on Hostinger, 20% off →Your friend gets 20% off too, using this linkFree API →|Web & Frontend Development|View on GitHub|Create your own skill →

Installation

clawhub install codylrn804/crawl4ai

Summary

Crawl4ai is an AI-powered web scraping framework designed to extract structured data from websites efficiently. It combines traditional HTML parsing with AI to handle dynamic content, extract text intelligently, and clean and structure data from complex web pages.

SKILL.md

Crawl4ai

Overview

Crawl4ai is an AI-powered web scraping framework designed to extract structured data from websites efficiently. It combines traditional HTML parsing with AI to handle dynamic content, extract text intelligently, and clean and structure data from complex web pages.

When to Use This Skill

Use when Codex needs to:

  • Extract structured data from web pages (products, articles, forms, tables, etc.)
  • Scrape websites with dynamic content or complex JavaScript
  • Clean and normalize extracted data from various HTML structures
  • Work with APIs or web services that return HTML
  • Handle CORS limitations by scraping directly
  • Process web content at scale with reliability

Trigger phrases:

  • "Extract data from this website"
  • "Scrape this page for [specific data]"
  • "Parse this HTML"
  • "Get data from [URL]"
  • "Extract structured information from [website]"
  • "Scrape [website] for [data type]"
  • "Web scrape [URL]"

Quick Start

Basic Usage

python
from crawl4ai import AsyncWebCrawler, BrowserMode

async def scrape_page(url):
    async with AsyncWebCrawler() as crawler:
        result = await crawler.arun(
            url=url,
            browser_mode=BrowserMode.LATEST,
            headless=True
        )
        return result.markdown, result.clean_html

Extracting Structured Data

python
from crawl4ai import AsyncWebCrawler, JsonModeScreener
import json

async def extract_products(url):
    async with AsyncWebCrawler() as crawler:
        result = await crawler.arun(
            url=url,
            screenshot=True,
            javascript=True,
            bypass_cache=True
        )
        # Extract product data
        products = []
        for item in result.extracted_content:
            if item['type'] == 'product':
                products.append({
                    'name': item['name'],
                    'price': item['price'],
                    'url': item['url']
                })
        return products

Common Tasks

Web Scraping Basics

Scenario: User wants to scrape a website for all article titles.

python
from crawl4ai import AsyncWebCrawler

async def scrape_articles(url):
    async with AsyncWebCrawler() as crawler:
        result = await crawler.arun(
            url=url,
            javascript=True,
            verbose=True
        )
        # Extract article titles from HTML
        articles = result.extracted_content if result.extracted_content else []
        titles = [item.get('name', item.get('text', '')) for item in articles]
        return titles

Trigger: "Scrape this site for article titles" or "Get all titles from [URL]"

Dynamic Content Handling

Scenario: Website loads data via JavaScript.

python
from crawl4ai import AsyncWebCrawler

async def scrape_dynamic_site(url):
    async with AsyncWebCrawler() as crawler:
        result = await crawler.arun(
            url=url,
            javascript=True,  # Wait for JS execution
            wait_for="body",   # Wait for specific element
            delay=1.5,         # Wait time after load
            headless=True
        )
        return result.markdown

Trigger: "Scrape this dynamic website" or "This page needs JavaScript to load data"

Structured Data Extraction

Scenario: Extract specific fields like prices, descriptions, etc.

python
from crawl4ai import AsyncWebCrawler

async def extract_product_details(url):
    async with AsyncWebCrawler() as crawler:
        result = await crawler.arun(
            url=url,
            screenshot=True,
            js_code="""
                const products = document.querySelectorAll('.product');
                return Array.from(products).map(p => ({
                    name: p.querySelector('.name')?.textContent,
                    price: p.querySelector('.price')?.textContent,
                    url: p.querySelector('a')?.href
                }));
            """
        )
        return result.extracted_content

Trigger: "Extract product details from this page" or "Get price and name from [URL]"

HTML Cleaning and Parsing

Scenario: Clean messy HTML and extract clean text.

python
from crawl4ai import AsyncWebCrawler

async def clean_and_parse(url):
    async with AsyncWebCrawler() as crawler:
        result = await crawler.arun(
            url=url,
            remove_tags=['script', 'style', 'nav', 'footer', 'header'],
            only_main_content=True
        )
        # Clean and return markdown
        clean_text = result.clean_html
        return clean_text

Trigger: "Clean this HTML" or "Extract main content from this page"

Advanced Features

Custom JavaScript Injection

python
async def custom_scrape(url, custom_js):
    async with AsyncWebCrawler() as crawler:
        result = await crawler.arun(
            url=url,
            js_code=custom_js,
            js_only=True  # Only execute JS, don't download resources
        )
        return result.extracted_content

Session Management

python
from crawl4ai import AsyncWebCrawler

async def multi_page_scrape(base_url, urls):
    async with AsyncWebCrawler() as crawler:
        results = []
        for url in urls:
            result = await crawler.arun(
                url=url,
                session_id=f"session_{url}",
                bypass_cache=True
            )
            results.append({
                'url': url,
                'content': result.markdown,
                'status': result.success
            })
        return results

Best Practices

  1. Always check if the site allows scraping - Respect robots.txt and terms of service
  2. Use appropriate delays - Add delays between requests to avoid overwhelming servers
  3. Handle errors gracefully - Implement retry logic and error handling
  4. Be selective with data - Extract only what you need, don't dump entire pages
  5. Store data reliably - Save extracted data in structured formats (JSON, CSV)
  6. Clean URLs - Handle redirects and malformed URLs

Error Handling

python
async def robust_scrape(url):
    try:
        async with AsyncWebCrawler() as crawler:
            result = await crawler.arun(
                url=url,
                timeout=30000  # 30 seconds timeout
            )
            if result.success:
                return result.markdown, result.extracted_content
            else:
                print(f"Scraping failed: {result.error_message}")
                return None, None
    except Exception as e:
        print(f"Scraping error: {str(e)}")
        return None, None

Output Formats

Crawl4ai supports multiple output formats:

  • Markdown: Clean, readable text (result.markdown)
  • Clean HTML: Structured, cleaned HTML (result.clean_html)
  • Extracted Content: Structured JSON data (result.extracted_content)
  • Screenshot: Visual representation (result.screenshot)
  • Links: All links found on page (result.links)

Resources

scripts/

Python scripts for common crawling operations:

  • scrape_single_page.py - Basic scraping utility
  • scrape_multiple_pages.py - Batch scraping with pagination
  • extract_from_html.py - HTML parsing helper
  • clean_html.py - HTML cleaning utility

references/

Documentation and examples:

  • api_reference.md - Complete API documentation
  • examples.md - Common use cases and patterns
  • error_handling.md - Troubleshooting guide

Score

0–100
41/ 100

Grade

D

Popularity6/30

19 installs — early adoption.

Completeness18/30

Documented: description, one-line install, catalog metadata. Missing: SKILL.md body.

Trust6/25

Limited provenance information — review the source before installing.

Freshness11/15

Updated within the last 6 months.

Scored automatically from popularity, completeness, trust, and freshness — computed only from data in our catalog, never fabricated.

Proud of your score? Add this badge to your README.

Paste a snippet into your GitHub README. The badge updates automatically and links back to this page.

Crawl4ai skill score badge previewScore badge

Markdown

[![Crawl4ai skill](https://www.claudemarket.ai/skills/codylrn804/crawl4ai/badges/score.svg)](https://www.claudemarket.ai/skills/codylrn804/crawl4ai)

HTML

<a href="https://www.claudemarket.ai/skills/codylrn804/crawl4ai"><img src="https://www.claudemarket.ai/skills/codylrn804/crawl4ai/badges/score.svg" alt="Crawl4ai skill"/></a>

Crawl4ai FAQ

How do I install the Crawl4ai skill?

Run “clawhub install codylrn804/crawl4ai” in your terminal. The skill is added to your agent's skills directory and picked up automatically on the next run — no restart or extra configuration needed.

What does the Crawl4ai skill do?

Crawl4ai is an AI-powered web scraping framework designed to extract structured data from websites efficiently. It combines traditional HTML parsing with AI to handle dynamic content, extract text intelligently, and clean and structure data from complex web pages. The SKILL.md section on this page shows the exact instructions the skill gives your agent.

Is the Crawl4ai skill free?

Yes. Crawl4ai is a free, open-source skill by codylrn804. As with any third-party skill, review the source repository before installing it into an agent with sensitive access.

Does Crawl4ai work with Claude Code and OpenClaw?

Yes. Skills use the portable SKILL.md format, so Crawl4ai works with Claude Code, OpenClaw, Codex, Hermes, and any other agent that reads SKILL.md skills.

Recommended skills

Browse all →
jooneyp logo

Secucheck

jooneyp

2.7K installsInstall
manuelkiessling logo

Ask A Human

manuelkiessling

1.8K installsInstall
chrisk60331 logo

Backboard

chrisk60331

1.8K installsInstall
planetai87 logo

Warren Deploy

planetai87

1.7K installsInstall
abtdomain logo

DomainKits

abtdomain

1.7K installsInstall
rafacpti23 logo

PAPI

rafacpti23

1.7K installsInstall

Related guides

Hand-picked reading to help you choose, install, and use agent skills.

Guide10 Openclaw Skills Every Nextjs Developer NeedsGuideBest Openclaw Skills 2026GuideHow To Evaluate Openclaw Skill Before Installing

Skills by category

FrontendBackend & APIsTesting & QASecurityDevOps & CI/CDMCP & ToolingAutomationData & Analysis+27 more

MCP servers by category

MCP & ToolingBackend & APIsData & AnalysisDevOps & CI/CDAutomationSecurityDocsTesting & QA+24 more

Plugins by category

AutomationDevOps & CI/CDData & AnalysisDesign & CreativeSecurityBackend & APIsFrontendTesting & QA+16 more

Marketplaces by category

AutomationData & AnalysisDevOps & CI/CDDesign & CreativeFrontendBackend & APIsTesting & QASecurity+21 more

The Agent Stack

Weekly Claude Code, Agent SDK, and MCP moves worth your time — free.

Claude Market

AI agent skills directory, marketplace, and workflow hub for OpenClaw, Hermes Agent, Claude Code, Codex, and MCP-powered operator stacks.

Independent project, not affiliated with Anthropic.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Plugins
  • Browse Marketplaces
  • Newsletter

More

  • Submit a Tool
  • Create a Skill
  • Advertise
  • Free Tools
  • API
  • Shipping
  • Contact
  • Terms
  • Privacy
© 2026 Claude Market · Not affiliated with Anthropic
Fazier badgeFeatured on Twelve ToolsFeatured on Wired BusinessRemote OpenClaw - Featured on AI Agents DirectoryListed on Turbo0Featured on Uneed