Jobware Scraper: Stellenanzeigen als CSV exportieren

Du suchst Stellenanzeigen für Fach- und Führungskräfte von Jobware.de und willst sie in Excel oder in eine eigene Auswertung bekommen? Der Jobware.de Scraper holt die Anzeigen zu deinen Suchbegriffen und deiner Stadt und liefert sie als Tabelle: Titel, Arbeitgeber, Ort, Datum, Gehalt (wenn angegeben) und Link zur Anzeige. Ohne Code, in wenigen Minuten.

Niveau: Einsteiger
Dauer: 5 Minuten
Kosten: 30 Anzeigen mit Details: ca. 0,27 $
Werkzeuge: Apify Console oder Claude mit MCP
Actor auf Apify öffnen → Kosten ansehen Claude-Prompt kopieren

In diesem Tutorial

  1. Das bekommst du
  2. Alle Felder
  3. Beispiel: Controller in Frankfurt am Main
  4. Beispiel: Ingenieure in Stuttgart
  5. Schritt 1: Apify-Konto anlegen
  6. Schritt 2: Suche und Ort eintragen
  7. Schritt 3: Actor starten
  8. Schritt 4: Daten exportieren
  9. Welche Filter es gibt
  10. API und Zeitplan
  11. Prompt für Claude
  12. Kosten
  13. Anwendungen
  14. FAQ

Das bekommst du

Jobware.de bietet keine Export-Funktion für Stellenanzeigen. Der Jobware-Scraper holt die Anzeigen zu deinen Suchbegriffen und legt sie als Tabelle ab, die du als CSV, Excel oder JSON herunterladen kannst. Jobware richtet sich an Fach- und Führungskräfte, die Anzeigen sind also eher Controlling, IT, Ingenieurwesen und Management als Aushilfsjobs. Der Actor arbeitet ohne Login und ohne Browser.

Wir haben ihn einmal lokal laufen lassen, mit dem Suchbegriff „Controller“ in Frankfurt am Main. Das Ergebnis steht im Beispiel weiter unten.

Alle Felder im Überblick

So sind die Felder laut Ausgabe-Schema des Actors aufgebaut. Ohne includeDetails fehlen die Felder, die nur auf der Detailseite stehen (zum Beispiel Volltext und Anforderungen).

FeldTypInhalt
idTextEindeutige Anzeigen-ID, zum Beispiel jw-2070127905
titleTextTitel der Anzeige
companyTextArbeitgeber (bei Personalberatungen der Name der Beratung)
locationTextOrt der Stelle
cantonTextBundesland als Kürzel, zum Beispiel HE (der Feldname stammt aus dem gemeinsamen Schema aller Job-Actors)
employment_typeTextBeschäftigungsart, zum Beispiel full-time
workload_min / workload_maxZahlArbeitszeit in Prozent
remote_optionTextHomeoffice-Angabe, falls vorhanden (zum Beispiel hybrid)
salary_textTextGehalt, wie es in der Anzeige steht
salary_min / salary_maxZahlGehalt als Zahl aus salary_text (salary_max bleibt bei einer einzelnen Zahl leer)
salary_currency / salary_period / salary_sourceTextWährung (EUR), Zeitraum (year, month oder hour) und Quelle der Angabe (im Beispiellauf immer stated, also so in der Anzeige genannt)
description_snippetTextKurzbeschreibung
description_fullTextVoller Anzeigentext (mit includeDetails)
requirementsListeGenannte Anforderungen und Kenntnisse
company_description / company_url / company_logo_url / company_rating / company_review_count / company_benefits / company_social_urlsText / Zahl / ListeFirmenangaben, soweit Jobware sie liefert
apply_url / apply_emailTextBewerbungslink und, falls angegeben, Bewerbungs-E-Mail
contact_salutation, contact_firstname, contact_lastname, contact_email, contact_phone, contact_position, contact_rawTextAnsprechperson, falls die Anzeige eine nennt
posted_atDatumVeröffentlichungsdatum mit Uhrzeit (UTC)
expires_atDatumAblaufdatum der Anzeige
job_status / top_listingText / BooleanStatus der Anzeige und Markierung als hervorgehobene Anzeige
source_url / source_platformTextLink zur Originalanzeige und Plattform (jobware.de)
country / search_query / scraped_atTextLand (DE), der Suchbegriff, der die Anzeige gefunden hat, und Zeitpunkt des Abrufs

Beispiel: Controller in Frankfurt am Main

Wir haben den Actor am 21.10.2026 lokal mit diesem Input laufen lassen:

{
  "searchQueries": ["Controller"],
  "city": "Frankfurt am Main",
  "radius": 25,
  "sortBy": "date",
  "maxResultsPerQuery": 30,
  "maxResults": 30,
  "includeDetails": true
}

Die Suche meldete 88 Treffer für diese Kombination. Wir haben bei 30 gestoppt, also nicht an einer Seitengrenze (eine Seite hat bis zu 100 Treffer). Bei höherem Limit hätte der Actor alle 88 geholt. Der Lauf lieferte 30 Anzeigen mit Details und war nach wenigen Sekunden fertig (lokal gemessen, Zeiten auf Apify können abweichen). Drei Ergebnisse, gekürzt und ohne Kontaktangaben von Personen:

[
  {
    "id": "jw-2070127905",
    "title": "Controller (m/w/d)",
    "company": "a-team Zeitarbeit und Personalmanagement GmbH",
    "location": "Frankfurt am Main",
    "canton": "HE",
    "employment_type": "full-time",
    "workload_min": 100,
    "workload_max": 100,
    "remote_option": "hybrid",
    "salary_text": "60.000 €",
    "salary_min": 60000,
    "salary_currency": "EUR",
    "salary_period": "year",
    "salary_source": "stated",
    "posted_at": "2026-10-21T03:04:34.000Z",
    "expires_at": "2027-04-20T21:59:59.000Z",
    "source_url": "https://www.jobware.de/job/controller-m-w-d-064713753",
    "source_platform": "jobware.de",
    "search_query": "Controller"
  },
  {
    "id": "jw-2069000065",
    "title": "Financial Controller (m/w/d)",
    "company": "adesta GmbH & Co. KG",
    "location": "Frankfurt am Main",
    "remote_option": "hybrid",
    "salary_text": "65.000€ - 75.000€ pro Jahr",
    "salary_min": 65000,
    "salary_max": 75000,
    "salary_period": "year",
    "posted_at": "2026-10-17T23:41:16.000Z",
    "source_url": "https://www.jobware.de/job/financial-controller-m-w-d-064683801"
  },
  {
    "id": "jw-2068941705",
    "title": "Projektleiter Schaltanlagenbau Hoch- und Höchstspannung (w/m/d)",
    "company": "Brunel GmbH NL Mannheim",
    "location": "Frankfurt am Main",
    "salary_text": null,
    "posted_at": "2026-10-17T09:26:58.000Z",
    "source_url": "https://www.jobware.de/job/projektleiter-schaltanlagenbau-hoch-und-hoechstspannung-w-m-d-064681585"
  }
]

So waren die Felder bei den 30 Anzeigen gefüllt:

Prüfe die Treffer. Von den 30 Anzeigen lagen 19 in Frankfurt am Main, die anderen zum Beispiel in Weiterstadt, Offenbach, Friedberg, Hannover oder Berlin. Es waren auch Titel dabei, die nur am Rand mit Controlling zu tun haben (etwa Kita-Leitung oder Patientenadministration). Und viele Anzeigen kommen von Personalberatungen, nicht vom Endarbeitgeber. Nutze mehrere genaue Suchbegriffe und filtere die Tabelle danach.
Zur Sortierung: Die Suche von Jobware liefert nach Relevanz. Mit sortBy date sortiert der Actor die gesammelten Treffer nach Datum. Mit Limit 30 bekommst du also die 30 relevantesten Treffer, nach Datum sortiert, und nicht unbedingt die 30 neuesten. Sortiere in der Tabelle zusätzlich nach posted_at.

Der Beispiellauf lief lokal ohne Apify-Proxy (der Actor verlangt auf Apify einen Proxy, wir haben ihn für den Test aus einer Kopie des Codes entfernt) und wurde nicht auf Apify abgerechnet. Die Kosten dafür findest du unter Kosten.

Beispiel: Ingenieure in Stuttgart und Umgebung

Dieses Beispiel steckt hinter unserem Short zu Ingenieurstellen in Stuttgart. Lokaler Lauf am 21.10.2026: Suchbegriff „Ingenieur“, Stuttgart und 25 km Umkreis, bis zu 300 Anzeigen mit Details:

{
  "searchQuery": "Ingenieur",
  "city": "Stuttgart",
  "radius": 25,
  "sortBy": "date",
  "maxResultsPerQuery": 300,
  "includeDetails": true
}

Mit Claude: Verbinde den Apify MCP Server als eigenen Konnektor mit dieser URL (siehe Apifys MCP-Dokumentation). Sie beschränkt Claude auf diesen einen Actor:

https://mcp.apify.com?tools=santamaria-automations/jobware-de-scraper

Dann fügst du diesen Prompt ein. Claude nennt dir zuerst die Kosten und wartet auf dein OK:

Nutze den Apify MCP Server. Starte den Actor santamaria-automations/jobware-de-scraper mit
searchQuery "Ingenieur", city "Stuttgart", radius 25, sortBy "date", maxResultsPerQuery 300, includeDetails true.
Sag mir vor dem Start, was der Lauf kostet, und warte auf mein OK.
Behalte danach nur Anzeigen aus der Region Stuttgart (Stuttgart, Böblingen, Sindelfingen, Ditzingen, Leonberg, Weissach und Nachbarorte)
aus den letzten vier Wochen mit Ingenieur oder Engineer im Titel, ohne duale Studiengänge.
Gib mir eine Tabelle mit Firma, Anzahl Anzeigen und remote_option, und markiere Firmen, die nach Personalvermittlung aussehen.
Kosten dieses Laufs: Auf dem Free-Plan 0,005 $ + 300 x 0,00875 $ = 2,63 $ (mit Details). Ohne Details wären es 0,005 $ + 300 x 0,00375 $ = 1,13 $. Der Lauf lief lokal über einen eigenen Proxy und wurde nicht auf Apify abgerechnet.
SCHRITT 1

Apify-Konto anlegen

  1. Öffne die Seite des Jobware-Scrapers auf Apify.
  2. Klicke auf Try for free und registriere dich mit Google oder E-Mail.
  3. Du landest in der Apify Console im Tab Input des Actors. Für kleine Läufe reicht das monatliche Gratis-Guthaben des Free-Plans.
SCHRITT 2

Suche und Ort eintragen

Im Feld searchQueries trägst du ein oder mehrere Suchbegriffe ein. Jeder Begriff läuft als eigene Suche, doppelte Anzeigen werden über alle Begriffe hinweg entfernt. Den Ort gibst du bei city an, die Umkreissuche bei radius. Das war der Input des Beispiellaufs (siehe oben).

Starte klein. Setze beim ersten Lauf maxResults auf 10 bis 30. So siehst du in kurzer Zeit, ob die Treffer zu deinem Suchbegriff passen, und zahlst nur wenige Cent.
SCHRITT 3

Actor starten und Ergebnis ansehen

Klicke unten auf Save and Run. Auf der Lauf-Seite siehst du im Tab Log den Fortschritt, im Tab Dataset die Ergebnisse als Tabelle. Mehrere Suchbegriffe in einem Lauf sehen so aus:

{
  "searchQueries": ["Controller", "Finanzbuchhalter", "Business Analyst"],
  "city": "München",
  "maxResultsPerQuery": 50,
  "includeDetails": false
}
SCHRITT 4

Daten exportieren

  1. Öffne im Lauf den Tab Dataset.
  2. Klicke auf Export.
  3. Wähle das Format: CSV, Excel, JSON und weitere stehen zur Auswahl. Mit der Feld-Auswahl exportierst du nur die Spalten, die du brauchst, zum Beispiel title, company, location, salary_text, posted_at und source_url.

Welche Filter es gibt

Der Actor filtert bei der Suche nach diesen Angaben:

Einen Filter für Gehalt oder Branche gibt es nicht. Das erledigst du danach in der Tabelle, etwa mit salary_min und remote_option.

Per API und automatisch abrufen

Du kannst den Actor auch aus eigenen Skripten, n8n oder Make aufrufen. Dieser Aufruf startet einen Lauf und gibt die Ergebnisse direkt zurück (Apify-Endpunkt run-sync-get-dataset-items):

curl -X POST "https://api.apify.com/v2/acts/santamaria-automations~jobware-de-scraper/run-sync-get-dataset-items?token=DEIN_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchQueries": ["Controller"], "city": "Frankfurt am Main", "radius": 25, "maxResults": 50, "sortBy": "date"}'

Deinen API-Token findest du in der Apify Console unter Settings → API & Integrations. Für Abrufe, die regelmäßig laufen sollen, legst du in der Console unter Schedules einen Zeitplan an. Vergleiche die Ergebnisse mit dem letzten Abruf (Feld id), damit du nur neue Anzeigen weiterverarbeitest.

Prompt für Claude zum Kopieren

Füge in Claude den Apify MCP Server als eigenen Konnektor mit dieser URL hinzu (siehe Apifys MCP-Dokumentation). Die URL beschränkt Claude auf diesen einen Actor:

https://mcp.apify.com?tools=santamaria-automations/jobware-de-scraper

Dann fügst du diesen Prompt ein und ersetzt die Suche durch deine. Claude nennt dir zuerst die Kosten und wartet auf dein OK, bevor der Lauf startet:

Nutze den Apify MCP Server. Starte den Actor santamaria-automations/jobware-de-scraper mit
searchQueries ["Controller"], city "Frankfurt am Main", radius 25, sortBy "date",
maxResultsPerQuery 30, maxResults 30 und includeDetails true.
Sag mir vor dem Start, was der Lauf kostet, und warte auf mein OK.
Wenn er fertig ist, gib mir eine Tabelle mit Titel, Arbeitgeber, Ort, Gehalt, Veröffentlichungsdatum und Link,
sortiert nach Veröffentlichungsdatum, und nenne mir, wie viele Anzeigen ein Gehalt haben.

Getestet haben wir den Actor und die Eingaben, nicht die Prompts über MCP; Claude formuliert die Kostenangabe eventuell anders.

Was das kostet

Der Actor rechnet pro Ergebnis ab (Preise laut Apify Store, Stand 21.10.2026):

Jede Anzeige wird nur einmal berechnet, entweder als Treffer oder mit Details, nicht beides. Rechenbeispiel für den Lauf oben: 30 Anzeigen mit Details = 0,005 $ + 30 x 0,00875 $ = 0,2675 $, also etwa 0,27 $. Dieselben 30 Anzeigen ohne Details kosten 0,005 $ + 30 x 0,00375 $ = 0,1175 $, also etwa 0,12 $. Die aktuellen Preise findest du immer auf der Apify-Seite des Actors.

Wofür Leute die Daten nutzen

Stellenmarkt für Fach- und Führungskräfte beobachten

Lass regelmäßig dieselbe Suche laufen und zähle, wie viele Anzeigen pro Woche für eine Rolle und eine Region dazukommen oder welche Arbeitgeber am häufigsten suchen.

Gehälter vergleichen

Mit salary_min, salary_max und salary_period vergleichst du die Angaben aus den Anzeigen. Rechne mit wenigen Treffern: Im Beispiel hatten 4 von 30 Anzeigen ein Gehalt.

Personalberatungen und Arbeitgeber auseinanderhalten

Viele Anzeigen stammen von Personalberatungen. Mit company und dem Anzeigentext trennst du Direktarbeitgeber von Vermittlern, etwa für eine Marktübersicht.

Eigene Jobliste füttern

Über source_url verlinkst du auf die Originalanzeige. Mit expires_at entfernst du abgelaufene Anzeigen aus deiner Liste.

Häufige Fragen

Brauche ich Programmierkenntnisse für den Jobware-Scraper?

Nein. In der Apify Console füllst du ein Formular aus, klickst auf Save and Run und lädst die Tabelle herunter. Code brauchst du nur, wenn du den Actor per API in ein eigenes System einbauen willst.

Welche Daten bekomme ich von Jobware.de?

Titel, Arbeitgeber, Ort, Beschäftigungsart, Arbeitszeit, Homeoffice-Angabe, Gehalt (wenn genannt), Veröffentlichungs- und Ablaufdatum, Link zur Originalanzeige, Bewerbungslink und mit includeDetails auch Volltext und Anforderungen. Welche Felder gefüllt sind, hängt von der einzelnen Anzeige ab.

Warum ist das Gehaltsfeld bei den meisten Anzeigen leer?

Weil die meisten Anzeigen kein Gehalt nennen. Im Beispiellauf mit 30 Anzeigen hatten 4 eine Gehaltsangabe. Der Actor schätzt kein Gehalt, er übernimmt nur, was in der Anzeige steht.

Bekomme ich mit sortBy date die 30 neuesten Anzeigen?

Nicht unbedingt. Die Suche von Jobware liefert nach Relevanz. Der Actor sortiert die gesammelten Treffer nach Datum. Mit einem kleinen Limit bekommst du also die relevantesten Treffer, nach Datum sortiert. Für alle Anzeigen setze das Limit höher oder auf 0.

Was kostet der Jobware-Scraper?

0,005 $ pro Lauf, dazu 0,00375 $ pro Anzeige aus der Trefferliste oder 0,00875 $ pro Anzeige mit Detailseite. 30 Anzeigen mit Details kosten damit etwa 0,27 $.

Darf ich die Daten verwenden?

Das hängt von deinem Anwendungsfall ab, besonders bei Angaben zu Personen, etwa Ansprechpartner oder E-Mail-Adresse in der Bewerbungsangabe. Prüfe das für deinen Fall, bevor du Daten speicherst oder weiterverwendest.

Weiterführende Links

Actor auf Apify öffnen → Alle Tutorials