# hCaptcha-Bilderkennung

> hCaptcha-Bildaufgaben mit YesCaptcha erkennen (HCaptchaClassification): Auswahl im 3×3-Raster, Klick auf eine bestimmte Position, Ziehen an eine bestimmte Position, animierte Fragen; synchrone Antwort, kein Punkteabzug, wenn kein Ziel erkannt wird.

Source: https://docs.yescaptcha.com/de/tasks/hcaptcha-classification/ · Last verified: 2026-10-15

> This page was machine-translated from the Chinese version. If anything differs, the Chinese version prevails: https://docs.yescaptcha.com/zh/tasks/hcaptcha-classification/

`HCaptchaClassification` erkennt die Bildaufgaben von hCaptcha: Sie senden die Frage und die Bilder und erhalten zurück, welche Bilder auszuwählen sind, welche Position anzuklicken ist oder wohin gezogen werden soll. Die Aktion führt Ihr Programm im Browser aus. Der Typ gibt **kein Token** zurück. Die Antwort kommt synchron, jede Anfrage kostet 8 Punkte (≈ $1.20 / 1k), und wenn kein Ziel erkannt wird (leeres Ergebnis), erfolgt kein Punkteabzug.

> **Tipp:** Wenn Sie keine eigene Klick-Logik schreiben möchten, nutzen Sie die [Browser-Erweiterung](https://docs.yescaptcha.com/de/extension.md); sie unterstützt alle diese Aufgabenarten. Wenn Sie ein Token statt Klickpositionen benötigen, verwenden Sie [hCaptcha](https://docs.yescaptcha.com/de/tasks/hcaptcha.md).

- POST `https://api.yescaptcha.com/createTask` (Globaler Endpoint)
- POST `https://cn.yescaptcha.com/createTask` (China-Endpoint)

## Typen und Preise

| Aufgabentyp | Preis | Modus | Hinweise |
| --- | --- | --- | --- |
| `HCaptchaClassification` | $1.20 / 1k; 8 Punkte/Aufgabe · ¥8 / 1k | Synchron | Kein Punkteabzug, wenn kein Ziel gefunden wird |

Die Preise in US-Dollar sind Schätzwerte bei 1 US$ ≈ ¥6.67; Aufgaben werden in Punkten berechnet.

## Anfrageparameter

| Feld | Typ | Erforderlich | Beschreibung |
| --- | --- | --- | --- |
| `type` | string | Ja | Aufgabentyp; siehe „Aufgabentypen und Preise“ auf dieser Seite |
| `queries` | array | Ja | Liste der Base64-codierten Aufgabenbilder in der Reihenfolge auf der Seite (9 Einzelbilder bei einem 3×3-Raster) |
| `question` | string | Nein | Die vollständige Frage, wie sie auf der Seite angezeigt wird (empfohlen: Vereinfachtes Chinesisch oder Englisch), z. B. `Please click each image containing a bicycle`. Senden Sie mindestens eines von `question` und `anchors`; empfohlen ist, beide zu senden |
| `anchors` | array | Nein | Base64-codierte Beispielbilder, die neben der Frage angezeigt werden; erforderlich bei Fragen, die Beispielbilder haben |

-   Übergeben Sie `question` unverändert so, wie die Frage auf der Seite angezeigt wird. Eine Übersetzung ist nicht nötig; es wird empfohlen, hCaptcha auf Vereinfachtes Chinesisch oder Englisch umzustellen. Neue Formulierungen werden in der Regel schnell unterstützt, ganz neue Kategorien innerhalb von 3 Werktagen.

> **Achtung:** Wenn oben rechts neben der Frage ein kleines Beispielbild angezeigt wird, übergeben Sie es in `anchors`. Fragen, die sich nur mit dem Beispielbild beantworten lassen, werden ohne `anchors` nicht erkannt.

## Auswahl im 3×3-Raster

Die Frage lautet „Klicken Sie auf jedes Bild mit …“, darunter stehen 9 kleine Bilder. Legen Sie in `queries` die 9 Bilder als Base64 ab, in der Reihenfolge auf der Seite:

POST https://api.yescaptcha.com/createTask

```json
{
  "clientKey": "YOUR_CLIENT_KEY",
  "task": {
    "type": "HCaptchaClassification",
    "question": "Please click each image containing a bicycle",
    "queries": ["BASE64_IMAGE_1", "BASE64_IMAGE_2"]
  }
}
```

Antwort:

```json
{
  "errorId": 0,
  "status": "ready",
  "solution": {
    "objects": [true, false, false, true, true, false, true, true, false],
    "top_k": [0, 3, 4, 6, 7],
    "confidences": [1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 1.0, 1.0, 0.0]
  }
}
```

`objects` und `top_k` bedeuten dasselbe: `objects` gibt für jedes Bild an, ob es ein Ziel ist, `top_k` listet die Indizes der Zielbilder auf (ab 0). Klicken Sie diese Bilder an.

## Klick auf eine bestimmte Position

Die Frage lautet „Klicken Sie auf …“, darunter steht ein großes Bild, auf dem eine oder mehrere Positionen anzuklicken sind.

1.  Übernehmen Sie `question` von der Seite. Wenn Beispielbilder vorhanden sind, legen Sie sie in `anchors` ab.
2.  Legen Sie ein Bild in `queries` ab: am besten das direkt aus dem Canvas exportierte Original (am besten als JPG). Wenn nur ein Screenshot möglich ist, erfassen Sie genau den Bereich des großen Bildes (im Bild unten rot umrandet), nicht mehr und nicht weniger.
3.  `box` in der Antwort enthält die anzuklickenden Koordinaten der Reihe nach als x1, y1, x2, y2, …, mit der oberen linken Ecke des hochgeladenen Bildes als Ursprung.
4.  Weicht die Größe des hochgeladenen Bildes von der Anzeigegröße auf der Seite ab, müssen Sie umrechnen: x auf der Seite = zurückgegebenes x × Anzeigebreite ÷ Breite des hochgeladenen Bildes (y entsprechend). Beispiel: Bei zurückgegebenem x = 769, einer Canvas-Anzeigebreite von 350 und einer Breite des hochgeladenen Bildes von 1000 klicken Sie auf der Seite bei 769 × 350 ÷ 1000 ≈ 269.

![Aufnahmebereich der Klick-Aufgabe: Der Fragetext ist question, die drei kleinen Beispielbilder sind anchors, das große Bild darunter ist queries](https://docs.yescaptcha.com/_astro/hcaptcha-click-areas.DCBFUFPf_Z123RnJ.webp)

POST https://api.yescaptcha.com/createTask

```json
{
  "clientKey": "YOUR_CLIENT_KEY",
  "task": {
    "type": "HCaptchaClassification",
    "question": "Please click on the entity present in the sample image.",
    "anchors": ["BASE64_ANCHOR_1", "BASE64_ANCHOR_2", "BASE64_ANCHOR_3"],
    "queries": ["BASE64_OF_THE_BIG_IMAGE"]
  }
}
```

Antwort:

```json
{
  "errorId": 0,
  "status": "ready",
  "solution": {
    "box": ["221", "213"]
  }
}
```

Müssen mehrere Ziele angeklickt werden, enthält `box` nacheinander mehrere Koordinatenpaare: `["221", "213", "340", "118", ...]`.

## Ziehen an eine bestimmte Position

Die Frage lautet „Ziehen Sie … nach …“; das Teil rechts muss an die passende Stelle im Bild gezogen werden.

1.  Übernehmen Sie `question` von der Seite.
2.  Legen Sie einen Screenshot in `queries` ab. Das Bild muss **sowohl** das zu ziehende Teil **als auch** die Zielposition zeigen; jede Seite des Bildes sollte mindestens 260 Pixel lang sein.
3.  Jeder Eintrag in `box` in der Antwort ist ein Ziehvorgang: `start` ist die Position des Teils, `end` die Position, an die es gezogen werden soll. Bei mehreren Teilen ziehen Sie sie nacheinander.

```json
{
  "errorId": 0,
  "status": "ready",
  "solution": {
    "type": "drag",
    "box": [
      {
        "start": [644, 218],
        "end": [239, 315]
      }
    ]
  }
}
```

![Beispiel für ein Erkennungsergebnis bei der Zieh-Aufgabe: Start ist das zu ziehende Teil, End ist die Zielposition](https://docs.yescaptcha.com/_astro/hcaptcha-drag-result.vEj4iyUz_1Ou9zz.webp)

Wenn Sie statt eines Screenshots Protokolldaten erhalten (Bilder der Teile, Koordinaten der Teile und das große Hintergrundbild), setzen Sie die Teile zunächst anhand der Koordinaten auf das große Bild. Erzeugen Sie so ein Bild im selben Stil wie der Screenshot der Seite und senden Sie dieses.

## Animierte Fragen

Ist das Aufgabenbild eine Animation, legen Sie die Animation (GIF o. Ä.) als Base64 in `queries` ab. Empfohlen wird eine Animationsdauer von mindestens 3 Sekunden, am besten 5 bis 6 Sekunden, bei etwa 12 FPS.

## Meldung und Erstattung nach Meldung

Schlägt die Prüfung nach dem Klicken fehl, können Sie die Aufgabe innerhalb von 1 Stunde mit [report](https://docs.yescaptcha.com/de/api/report.md) melden. Die Erstattung wird nach etwa 24 Stunden abgerechnet. Die Regeln finden Sie unter [Abrechnung und Punkteerstattung](https://docs.yescaptcha.com/de/getting-started/billing.md).

## Verwandte Anleitungen

-   [hCaptcha-Bilderkennung mit simulierten Klicks (Selenium)](https://docs.yescaptcha.com/de/guides/hcaptcha-click-selenium.md)
