> ## Documentation Index
> Fetch the complete documentation index at: https://docs.scrapely.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Introduction

> Welcome to Scrapely - The all-in-one web scraping, browser automation, and CAPTCHA solving platform.

Welcome to the **Scrapely** documentation! Scrapely is a powerful developer API and SDK designed to simplify extracting data from the modern web. We handle the heavy lifting of headless browser management, JavaScript rendering, proxy rotation, and anti-bot bypassing so you can focus entirely on your application's logic.

<Note>
  If you find Scrapely useful, please consider giving our [Python SDK a star on GitHub](https://github.com/scrapely-io/scrapely-python-client) ⭐!
</Note>

## Why Scrapely?

Building a scalable web scraper today requires stitching together multiple complex systems. Scrapely unifies these into a single, easy-to-use API:

* **JS Rendering & Headless Browsers**: Automatically render single-page applications (SPAs) and execute JavaScript without maintaining your own browser infrastructure.
* **Anti-Bot Bypass**: Scrape protected sites without getting blocked by services like Cloudflare or Datadome.
* **Interactive Browser Actions**: Simulate real user behavior by clicking buttons, typing text, scrolling, and waiting for elements to load before extracting data.
* **Full-Page Screenshots**: Capture high-quality viewport or full-page screenshots of any URL.
* **CAPTCHA Solving**: Built-in support for bypassing and solving complex CAPTCHAs (reCAPTCHA v2/v3 and Cloudflare Turnstile).

## Getting Started

To get started, you'll need a Scrapely API key. You can generate one by creating an account at [Scrapely.io](https://scrapely.io).

### 1. Installation (Python SDK)

If you are using Python, we highly recommend using our official SDK for the best developer experience:

```bash theme={null}
pip install scrapely-python-client
```

### 2. Your First Request

Here is a quick example showing how to fetch the fully-rendered HTML of a web page using Scrapely.

<CodeGroup>
  ```python Python SDK theme={null}
  from scrapely import Scrapely

  # Initialize the client with your API key
  client = Scrapely(api_key="YOUR_API_KEY")

  # Create a crawl task
  task = client.crawler.crawl(
      website_url="https://example.com",
      return_page_source=True
  )

  # Print the fully rendered HTML
  print(task.result.html)
  ```

  ```bash cURL theme={null}
  curl -X POST https://api.scrapely.io/v2/tasks/create \
    -H "Content-Type: application/json" \
    -H "X-API-Key: YOUR_API_KEY" \
    -d '{
      "crawler": {
        "websiteURL": "https://example.com",
        "return_page_source": true
      }
    }'
  ```
</CodeGroup>

## Explore the Documentation

Ready to dive deeper? Explore our core features below:

<CardGroup cols={2}>
  <Card title="Basic Crawling" icon="spider" href="/crawler/basic">
    Learn how to extract fully rendered HTML, text, and metadata.
  </Card>

  <Card title="Browser Instructions" icon="mouse-pointer" href="/crawler/instructions">
    Automate interactions like clicks, typing, and scrolling.
  </Card>

  <Card title="CAPTCHA Solving" icon="shield-check" href="/captcha/recaptcha-v2">
    Bypass reCAPTCHA v2, v3, and Cloudflare Turnstile.
  </Card>

  <Card title="Screenshots" icon="camera" href="/crawler/screenshot">
    Capture beautiful viewport or full-page screenshots.
  </Card>
</CardGroup>
