# Check24 Flight Scraper

Scrape flight Airline, price, start time, end time, etc from Check24 by Listing Page URLs.

- Template page: [https://www.octoparse.com/template/check-24-flug-scraper](https://www.octoparse.com/template/check-24-flug-scraper)
- Categories: Travel
- Status: `PUBLISHED`
- Run mode: `BOTH`

## Pricing

Free.

## What is an Octoparse template?

An Octoparse template is a ready-to-use scraping workflow with predefined inputs and structured outputs. Use the exact parameter keys below; do not invent parameters.

## Overview

This ready-to-use template collects structured data from general web pages.

## Output

The current workflow extracts 16 fields, including `Nach_Abreise_Datum`, `Nach_Ankunft_Datum`, `Nach_Dauer`, `Nach_Endzeit`, `Nach_Fluggesellschaft`, `Nach_Startzeit`, `Nach_Stopp_oder_Direkt`, `Preise`, `Von_Abreise_Datum`, `Von_Ankunft_Datum`, `Von_Dauer`, `Von_Endzeit`, `Von_Fluggesellschaft`, `Von_Startzeit`, `Von_Stopp_oder_Direkt`, `inklusive`.

## Use Cases

- Use structured results for research, comparison, and monitoring.
- Collect rows without building the extraction workflow from scratch.
- Combine results with other templates for downstream enrichment.
- Review a representative result before starting a large batch.

## Why Octoparse

- **No coding required:** complete Listing URLs (up to 100), Number of Pages and start the template in local or cloud mode.
- **Flexible export:** review and export results as CSV, Excel, or JSON.

## Input

### Listing URLs (up to 100)

Required. Listing URLs (up to 100) Constraints: minItems=1; maxItems=100; items.minLength=1; items.maxLength=10000.

### Number of Pages

Optional. Number of Pages Constraints: minimum=1, maximum=1000.

## How to Use

## Check24 Flight Scraper

### What It Collects
Flight airline, price, start time, end time, and other fields from Check24 flight listing pages.

### Input
- **Listing URLs (up to 100)** (required): Enter one or more URLs, one per line.
- **Number of Pages** (optional): 1 to 1000.

### Output Fields
- `Von_Fluggesellschaft`
- `Von_Startzeit`
- `Von_Abreise_Datum`
- `Von_Endzeit`
- `Von_Ankunft_Datum`
- `Von_Dauer`
- `Von_Stopp_oder_Direkt`
- `Nach_Fluggesellschaft`
- `Nach_Startzeit`
- `Nach_Abreise_Datum`
- `Nach_Endzeit`
- `Nach_Ankunft_Datum`
- `Nach_Dauer`
- `Nach_Stopp_oder_Direkt`
- `inklusive`
- `Preise`

### How to Use
1. Open the template and select **Try it** or **Start**.
2. Complete the input fields.
3. Choose local or cloud run.
4. Review output rows and export or process data.

### Limitations
- Collects only fields displayed on listing pages.
- `Nach_Stopp_oder_Direkt`, `inklusive`, `Preise` may be empty if not provided.

### Tips
- Start with a few inputs to verify output before scaling.
- Use specific valid Listing URLs to reduce duplicates.
- Use `Von_Fluggesellschaft`, `Von_Startzeit`, etc., as deduplication keys when available.

### Notes
- Pricing: No per-line charge. Octopaze plan or resource limits may apply.
- Scheduling and API access may require a paid Octoparse plan.

## Limitations

Results depend on what the source site exposes at run time. Fields may be empty when a source page does not provide a value. The template enforces the input limits shown above.

## Tips

Use specific, valid inputs and review a representative result before starting a large batch. Remove duplicate inputs when repeated records are not needed.

## FAQ

### What do I need to enter?

Use the exact inputs and limits listed above.

### What data does this template return?

See Output Schema below; availability can vary by source record.

### How is usage billed?

See the Pricing section above for current pricing and billing details.

## Related Templates

- [Expedia Japan Flight Scraper](https://www.octoparse.com/template/expedia-japan-flight-scraper)
- [Skyscanner Flight Price Scraper (Korea)](https://www.octoparse.com/template/skyscanner-scraper-korea)
- [Bic Camera Search Results Scraper](https://www.octoparse.com/template/bic-camera-search-results-scraper)
- [Google Search Scraper](https://www.octoparse.com/template/google-search-scraper)
- [Google Maps Listings Scraper (by Keywords)](https://www.octoparse.com/template/google-maps-scraper-listing-page-by-keyword)

## Input Schema

```json
{
  "title": "Check24 Flight Scraper input",
  "description": "Input parameters configured for the current published template version.",
  "type": "object",
  "schemaVersion": 1,
  "additionalProperties": false,
  "properties": {
    "listing_URLs": {
      "title": "Listing URLs (up to 100)",
      "description": "Listing URLs (up to 100)",
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 10000
      },
      "minItems": 1,
      "maxItems": 100,
      "x-octoparse": {
        "apiEnabled": true
      }
    },
    "number_of_Pages": {
      "title": "Number of Pages",
      "description": "Number of Pages",
      "type": "integer",
      "minimum": 1,
      "maximum": 1000,
      "x-octoparse": {
        "apiEnabled": true
      }
    }
  },
  "required": [
    "listing_URLs"
  ]
}
```

## Input JSON Example

Example 1

```json
{
  "listing_URLs": [
    "https://flug.check24.de/suchen/rt/FRA/FRA/18.05.2024/DUS/DUS/25.05.2024/0/0/0/0/1/0/0/0/0/-1/0/EPBF/alle/xxx/abflug/xxx/ankunft/0/0/-1/-1/start#/"
  ],
  "number_of_Pages": 100.0
}
```

Example 2

```json
{
  "listing_URLs": [
    "https://flug.check24.de/suchen/rt/FRA/FRA/18.05.2024/DUS/DUS/25.05.2024/0/0/0/0/1/0/0/0/0/-1/0/EPBF/alle/xxx/abflug/xxx/ankunft/0/0/-1/-1/start#/"
  ],
  "number_of_Pages": 100.0
}
```

Example 3

```json
{
  "listing_URLs": [
    "https://flug.check24.de/suchen/rt/FRA/FRA/18.05.2024/DUS/DUS/25.05.2024/0/0/0/0/1/0/0/0/0/-1/0/EPBF/alle/xxx/abflug/xxx/ankunft/0/0/-1/-1/start#/"
  ],
  "number_of_Pages": 100.0
}
```

Example 4

```json
{
  "listing_URLs": [
    "https://flug.check24.de/suchen/rt/FRA/FRA/18.05.2024/DUS/DUS/25.05.2024/0/0/0/0/1/0/0/0/0/-1/0/EPBF/alle/xxx/abflug/xxx/ankunft/0/0/-1/-1/start#/"
  ],
  "number_of_Pages": 100.0
}
```

Example 5

```json
{
  "listing_URLs": [
    "https://flug.check24.de/suchen/rt/FRA/FRA/18.05.2024/DUS/DUS/25.05.2024/0/0/0/0/1/0/0/0/0/-1/0/EPBF/alle/xxx/abflug/xxx/ankunft/0/0/-1/-1/start#/"
  ],
  "number_of_Pages": 100.0
}
```


## Output Schema

```json
{
  "schemaVersion": 1,
  "type": "object",
  "properties": {
    "Nach_Abreise_Datum": {
      "type": "string",
      "description": ""
    },
    "Nach_Ankunft_Datum": {
      "type": "string",
      "description": ""
    },
    "Nach_Dauer": {
      "type": "string",
      "description": ""
    },
    "Nach_Endzeit": {
      "type": "string",
      "description": ""
    },
    "Nach_Fluggesellschaft": {
      "type": "string",
      "description": ""
    },
    "Nach_Startzeit": {
      "type": "string",
      "description": ""
    },
    "Nach_Stopp_oder_Direkt": {
      "type": "string",
      "description": ""
    },
    "Preise": {
      "type": "string",
      "description": ""
    },
    "Von_Abreise_Datum": {
      "type": "string",
      "description": ""
    },
    "Von_Ankunft_Datum": {
      "type": "string",
      "description": ""
    },
    "Von_Dauer": {
      "type": "string",
      "description": ""
    },
    "Von_Endzeit": {
      "type": "string",
      "description": ""
    },
    "Von_Fluggesellschaft": {
      "type": "string",
      "description": ""
    },
    "Von_Startzeit": {
      "type": "string",
      "description": ""
    },
    "Von_Stopp_oder_Direkt": {
      "type": "string",
      "description": ""
    },
    "inklusive": {
      "type": "string",
      "description": ""
    }
  },
  "title": "Check24 Flight Scraper output",
  "description": "Initial output fields derived from the current published implementation. Field descriptions are maintained by Data Center; production field names and types should be refreshed from recent successful runs.",
  "additionalProperties": false
}
```

## Output Example

Example 1

```json
{
  "Nach_Abreise_Datum": "DUS\n-\n3. Okt.",
  "Nach_Ankunft_Datum": "FRA\n-\n3. Okt.",
  "Nach_Dauer": "50 Min.",
  "Nach_Endzeit": "19:30",
  "Nach_Fluggesellschaft": "Lufthansadurchgeführt von Lufthansa City Airlines",
  "Nach_Startzeit": "18:40",
  "Nach_Stopp_oder_Direkt": "Direkt",
  "Preise": "202,62 €",
  "Von_Abreise_Datum": "FRA\n-\n26. Sep.",
  "Von_Ankunft_Datum": "DUS\n-\n26. Sep.",
  "Von_Dauer": "45 Min.",
  "Von_Endzeit": "09:30",
  "Von_Fluggesellschaft": "Lufthansa",
  "Von_Startzeit": "08:45",
  "Von_Stopp_oder_Direkt": "Direkt",
  "inklusive": "kleine Tasche, Handgepäck"
}
```

Example 2

```json
{
  "Nach_Abreise_Datum": "DUS\n-\n26. Sep.",
  "Nach_Ankunft_Datum": "FRA\n-\n26. Sep.",
  "Nach_Dauer": "50 Min.",
  "Nach_Endzeit": "16:10",
  "Nach_Fluggesellschaft": "Lufthansa",
  "Nach_Startzeit": "15:20",
  "Nach_Stopp_oder_Direkt": "Direkt",
  "Preise": "201,23 €",
  "Von_Abreise_Datum": "FRA\n-\n19. Sep.",
  "Von_Ankunft_Datum": "DUS\n-\n19. Sep.",
  "Von_Dauer": "45 Min.",
  "Von_Endzeit": "14:15",
  "Von_Fluggesellschaft": "Lufthansa",
  "Von_Startzeit": "13:30",
  "Von_Stopp_oder_Direkt": "Direkt",
  "inklusive": "kleine Tasche, Handgepäck"
}
```

Example 3

```json
{
  "Nach_Abreise_Datum": "DUS\n-\n19. Sep.",
  "Nach_Ankunft_Datum": "FRA\n-\n19. Sep.",
  "Nach_Dauer": "50 Min.",
  "Nach_Endzeit": "19:30",
  "Nach_Fluggesellschaft": "Lufthansadurchgeführt von Lufthansa City Airlines",
  "Nach_Startzeit": "18:40",
  "Nach_Stopp_oder_Direkt": "Direkt",
  "Preise": "224,91 €",
  "Von_Abreise_Datum": "FRA\n-\n12. Sep.",
  "Von_Ankunft_Datum": "DUS\n-\n12. Sep.",
  "Von_Dauer": "45 Min.",
  "Von_Endzeit": "09:30",
  "Von_Fluggesellschaft": "Lufthansa",
  "Von_Startzeit": "08:45",
  "Von_Stopp_oder_Direkt": "Direkt",
  "inklusive": "kleine Tasche, Handgepäck"
}
```

Example 4

```json
{
  "Nach_Abreise_Datum": "DUS\n-\n12. Sep.",
  "Nach_Ankunft_Datum": "FRA\n-\n12. Sep.",
  "Nach_Dauer": "50 Min.",
  "Nach_Endzeit": "19:30",
  "Nach_Fluggesellschaft": "Lufthansadurchgeführt von Lufthansa City Airlines",
  "Nach_Startzeit": "18:40",
  "Nach_Stopp_oder_Direkt": "Direkt",
  "Preise": "224,91 €",
  "Von_Abreise_Datum": "FRA\n-\n5. Sep.",
  "Von_Ankunft_Datum": "DUS\n-\n5. Sep.",
  "Von_Dauer": "45 Min.",
  "Von_Endzeit": "09:30",
  "Von_Fluggesellschaft": "Lufthansa",
  "Von_Startzeit": "08:45",
  "Von_Stopp_oder_Direkt": "Direkt",
  "inklusive": "kleine Tasche, Handgepäck"
}
```

Example 5

```json
{
  "Nach_Abreise_Datum": "DUS\n-\n5. Sep.",
  "Nach_Ankunft_Datum": "FRA\n-\n5. Sep.",
  "Nach_Dauer": "50 Min.",
  "Nach_Endzeit": "19:30",
  "Nach_Fluggesellschaft": "Lufthansadurchgeführt von Lufthansa City Airlines",
  "Nach_Startzeit": "18:40",
  "Nach_Stopp_oder_Direkt": "Direkt",
  "Preise": "219,91 €",
  "Von_Abreise_Datum": "FRA\n-\n29. Aug.",
  "Von_Ankunft_Datum": "DUS\n-\n29. Aug.",
  "Von_Dauer": "45 Min.",
  "Von_Endzeit": "18:00",
  "Von_Fluggesellschaft": "Lufthansadurchgeführt von Lufthansa City Airlines",
  "Von_Startzeit": "17:15",
  "Von_Stopp_oder_Direkt": "Direkt",
  "inklusive": "kleine Tasche, Handgepäck"
}
```

## API

`POST https://openapi.octoparse.com/api/agentTools/executeTask`

This is the OpenAPI Agent Tools `executeTask` endpoint. Authenticate with a Bearer token.

Request body:

`templateName` is the template slug; `parameters` is a JSON object string whose keys match Input Schema; `taskName`, `idempotencyKey`, and `maxCollectedRows` are optional.

Obtain a token:

```http
POST https://openapi.octoparse.com/token
Content-Type: application/json

{
  "username": "YOUR_USERNAME",
  "password": "YOUR_PASSWORD",
  "grant_type": "password"
}
```

Use `data.access_token` as `Authorization: Bearer <token>`. After starting, poll `getTaskStatus` and export with `exportData`.

```json
{
  "templateName": "check-24-flug-scraper",
  "taskName": "Check24 Flight Scraper",
  "parameters": "{\"listing_URLs\":[\"https://flug.check24.de/suchen/rt/FRA/FRA/18.05.2024/DUS/DUS/25.05.2024/0/0/0/0/1/0/0/0/0/-1/0/EPBF/alle/xxx/abflug/xxx/ankunft/0/0/-1/-1/start#/\"],\"number_of_Pages\":100.0}"
}
```

## Python Example

```python
import json
import requests

OPENAPI_BASE = "https://openapi.octoparse.com"
ACCESS_TOKEN = "YOUR_ACCESS_TOKEN"

parameters = json.loads("{\"listing_URLs\":[\"https://flug.check24.de/suchen/rt/FRA/FRA/18.05.2024/DUS/DUS/25.05.2024/0/0/0/0/1/0/0/0/0/-1/0/EPBF/alle/xxx/abflug/xxx/ankunft/0/0/-1/-1/start#/\"],\"number_of_Pages\":100.0}")

response = requests.post(
    f"{OPENAPI_BASE}/api/agentTools/executeTask",
    headers={
        "Authorization": f"Bearer {ACCESS_TOKEN}",
        "Content-Type": "application/json",
    },
    json={
        "templateName": "check-24-flug-scraper",
        "taskName": "Check24 Flight Scraper",
        "parameters": json.dumps(parameters, ensure_ascii=False),
    },
    timeout=60,
)
print(response.status_code)
print(response.json())
```

## HTTP/cURL Example

```bash
curl -X POST "https://openapi.octoparse.com/api/agentTools/executeTask" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  --data-binary @- <<'JSON'
{
  "templateName": "check-24-flug-scraper",
  "taskName": "Check24 Flight Scraper",
  "parameters": "{\"listing_URLs\":[\"https://flug.check24.de/suchen/rt/FRA/FRA/18.05.2024/DUS/DUS/25.05.2024/0/0/0/0/1/0/0/0/0/-1/0/EPBF/alle/xxx/abflug/xxx/ankunft/0/0/-1/-1/start#/\"],\"number_of_Pages\":100.0}"
}
JSON
```

## MCP Setup

Connect an MCP-compatible AI client to `https://mcp.octoparse.com` using browser OAuth or an Octoparse API key. Find `check-24-flug-scraper`, inspect its inputs, create a cloud task with the exact Input Schema keys, and export JSON results.

## Machine-readable Resources

- [Template contract](https://www.octoparse.com/templates/check-24-flug-scraper.json)
- [Manifest](https://www.octoparse.com/templates/check-24-flug-scraper-manifest.json)
