LinkedIn Scraping mit n8n, Bright Data, OpenAI und SMTP

Erstellen Sie einen No-Code-Workflow zum Scrapen von LinkedIn, Extrahieren von Profilen mit KI und Senden der Ergebnisse direkt an Ihren Posteingang mit n8n, Bright Data und OpenAI.
8 min lesen
LinkedIn Scraping With n8n, Bright Data, OpenAI and SMTP blog image

In diesem Leitfaden erfahren Sie mehr:

  • Wie man LinkedIn-Scraping mit n8n, Bright Data und OpenAI automatisiert
  • Wie Sie einen No-Code-Workflow erstellen, der Bewerberprofile direkt an Ihren Posteingang sendet
  • Warum die Kombination von Web Unlocker, ChatGPT und SMTP ein leistungsstarkes Rekrutierungstool darstellt

Fangen wir an!

Erste Schritte

Sie können sich diesen Arbeitsablauf auf n8n hier ansehen. Um die Einrichtung so einfach wie möglich zu gestalten, müssen wir jedoch zunächst ein paar Dinge erledigen.

Selbst-Hosting n8n

Dieser Arbeitsablauf stützt sich auf die Community-Knoten von n8n. Community Nodes sind Drittanbieter-Tools, die von guten Samaritern in der n8n-Community bereitgestellt werden. Der beste Weg, all diese beweglichen Teile zu verwalten, ist, sie in einen Docker-Container zu packen.

Installation von Docker

Wenn Sie das native Ubuntu oder Ubuntu über WSL unter Windows verwenden, führen Sie den folgenden Befehl aus, um Docker zu installieren. Informationen zur Installation von Docker für andere Plattformen finden Sie hier.

sudo snap install docker

Sobald Docker installiert ist, erstellen Sie ein Speichervolumen und starten Ihren Container.

Erstellen eines n8n-Containers

sudo docker volume create n8n_data
sudo docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n

Installation von Gemeinschaftsknoten

Öffnen Sie http://localhost:5678/ in Ihrem Browser. Sie erhalten eine vollständig selbst gehostete Version der n8n-Webapp, die lokal ausgeführt wird.

Klicken Sie in der Seitenleiste auf die drei Punkte neben Ihrem Profil und wählen Sie “Einstellungen”.

Einstellungen öffnen

Wenn Sie im Einstellungsmenü sind, wählen Sie “Community Nodes”. Dadurch erhalten Sie Zugang zu den bereits erwähnten Tools von Drittanbietern.

Klicken Sie auf “Installieren” und es wird ein Popup für den zu installierenden Knoten angezeigt. Fügen Sie im Abschnitt “npm-Paket” das folgende Paket ein.

n8n-nodes-brightdata

Wenn Sie bereit sind, klicken Sie auf “Installieren”.

Bright Data Community-Knoten installieren

Wiederholen Sie diesen Vorgang nun für den Dokumentengenerator.

n8n-nodes-document-generator
Dokumentgenerator-Gemeinschaftsknoten installieren

Neustart des Containers

Sobald Ihre Community Nodes installiert sind, beenden Sie den Container mit ctrl+c. Führen Sie den folgenden Befehl aus, um n8n neu zu starten.

sudo docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n

Importieren des Workflows

Nach der Einrichtung sind wir endlich bereit, den vorhin erwähnten Workflow zu importieren. Gehen Sie auf die n8n-Seite und klicken Sie auf die Schaltfläche “Kostenlos verwenden”.

LinkedIn Profil Findr Home Page

Sie sollten ein Popup-Fenster mit verschiedenen Optionen sehen. Am einfachsten ist es, wenn Sie “Vorlage in die selbst gehostete Instanz localhost:5678 importieren” wählen.

Importoptionen aus n8n

Ihre Anmeldeinformationen eingeben oder importieren

Jetzt werden Sie automatisch aufgefordert, Ihre Anmeldeinformationen für Bright Data, OpenAI und SMTP einzugeben.

Geben Sie Ihre Anmeldeinformationen ein

Beziehen Ihrer API-Schlüssel

Helle Daten

Dieser Arbeitsablauf verwendet Web Unlocker, um unsere Suche durchzuführen. Navigieren Sie nach der Anmeldung für Web Unlocker zum Web Unlocker Dashboard und holen Sie sich Ihren API-Schlüssel. n8n verwendet diesen Schlüssel, um Ergebnisse mit Bright Data zu scrapen.

Web Unlocker Dashboard

OpenAI

Gehen Sie auf die OpenAI-Entwicklerplattform und erstellen Sie ein Konto, falls Sie dies noch nicht getan haben. Klicken Sie dann auf “API-Schlüssel”, um einen Schlüssel zu generieren.

OpenAI API-Schlüssel erhalten

SMTP

Dieser Prozess ist mit jedem SMTP-Client kompatibel. Derzeit verwende ich Elastic Email. Deren kostenloser Plan ist hervorragend für lokale Projekte wie dieses geeignet. Speichern Sie Ihren Benutzernamen, Ihr Passwort, Ihren Server und Ihren Port. Wir werden diese mit n8n verwenden, um Ihren E-Mail-Prozess zu automatisieren.

SMTP-Anmeldeinformationen

Workflow-Schritte

LinkedIn Profil Finder Arbeitsablauf

Wenn der Benutzer ein Formular ausfüllt

Wenn ein Benutzer ein Webformular ausfüllt, löst dies unseren Workflow aus. Es steht Ihnen frei, diesen Knoten zu öffnen und sich die Parameter und Einstellungen anzusehen. Allerdings sollte alles in diesem Schritt vorkonfiguriert sein – eine Bearbeitung ist nicht erforderlich.

Benutzerformular-Einstellungen

Erstellen der LinkedIn URL und Unternehmenssuche

Wenn das Formular ausgefüllt ist, starten wir zwei separate Arbeitsabläufe.

Einer von ihnen erstellt eine Google-URL für die Suche nach dem LinkedIn-Profil der betreffenden Person.

LinkedIn Profil-Suche

Unser anderer macht eine separate Google-URL, um auf LinkedIn nach seinem Unternehmen zu suchen.

Diese beiden URLs werden an Web Unlocker weitergegeben, um eine Blockierung zu vermeiden.

Erstellen der URLs und Übergabe an den Web Unlocker

HTML aus den Ergebnissen extrahieren

Jetzt extrahieren wir den HTML-Code aus unseren Ergebnissen. Wir haben zwei Knoten mit der Bezeichnung “Body und Titel von Website extrahieren”. Beide ziehen den Titel und den Textkörper aus der JSON-Antwort von Bright Data.

Extrahieren des HTML-Inhalts

Im Arbeitsablauf finden die beiden hervorgehobenen Schritte gleichzeitig statt.

Workflow-Schritte: HTML-Extraktion

Auswertung der Ergebnisse mit ChatGPT

Nun, da wir den Titel und den Textkörper von jeder Suche erhalten haben, übergeben wir unsere HTML-Ergebnisse zur Verarbeitung an ChatGPT. Jeder dieser Knoten enthält einen Prozess, wie Sie ihn unten sehen. Wir definieren unser Modell (GPT-4o mini) und geben ihm eine Aufforderung, unsere Daten zu extrahieren.

Parsen mit ChatGPT-Parametern und Einstellungen

Wie Sie unten sehen können, geschieht dies auch bei unseren beiden Prozessen gleichzeitig.

Analyse der Google-Ergebnisse mit ChatGPT

Extrahieren Sie die analysierten Ergebnisse und teilen Sie sie auf, um die Unternehmenssuche zu beenden.

Während dieses Schritts endet einer unserer separaten Workflows mit einem “Split Out”. Wenn der Workflow “Unternehmen” endet, extrahieren wir die geparsten Ergebnisse aus unserem Workflow “Person”.

Hier sind die Anweisungen für die Extraktion. Wie Sie sehen können, sind wir im Grunde nur ziehen kleinere Stücke aus dem größeren JSON Körper.

Extraktionsverfahren

Unser “Unternehmens”-Workflow ist nun beendet und unser “Personen”-Workflow hat noch einige Schritte zu erledigen. Der “Unternehmen”-Workflow bleibt angehalten, bis diese Prozesse zusammengeführt werden können – hier kommt die Schönheit von n8n erst richtig zur Geltung… asynchrone Programmierung ohne Programmieraufwand!

Aufteilen und Extrahieren von geparsten Ergebnissen

Beschränken Sie sich auf 1 Profil und validieren Sie dessen Existenz

Unser Workflow “Person” filtert das Ergebnis so, dass nur übereinstimmende Profile verwendet werden. Dann beschränken wir es auf ein Profil und stellen sicher, dass das Profil existiert. Wenn es nicht vorhanden ist, aktualisieren wir das Formular und teilen dem Benutzer mit, dass das Profil nicht gefunden wurde.

Meldung zur Fehlerbehandlung

Solange das Profil existiert, können wir nun wieder zu einem einzigen, kohärenten Arbeitsablauf zusammengeführt werden.

Nur eine Person auswählen und sicherstellen, dass ihr Profil vorhanden ist

Zusammenführung der Arbeitsabläufe

Wie Sie unten sehen können, werden die Daten aus beiden Arbeitsabläufen als Eingabe verwendet. Sie werden zu einer einzigen Ausgabe zusammengeführt, die wir ein letztes Mal an ChatGPT weitergeben können.

Zusammenführung der Eingaben

Endlich fügt sich alles zusammen. Sobald wir einen einheitlichen Arbeitsablauf haben, sind wir bereit, die letzten Schritte auszuführen.

Zusammenführung der beiden Arbeitsabläufe

Aufsuchende Maßnahmen und Follow-up-Schritte konzipieren

Nun übergeben wir diese einzelne Ausgabe zurück an ChatGPT, um unsere E-Mail fertigzustellen. Es schreibt sogar benutzerdefinierten HTML-Code, so dass wir uns keine Gedanken über Markup-Code machen müssen.

Übergabe der Eingabe an ChatGPT

Sobald der HTML-Code zurückkommt, können wir die Ergebnisse per E-Mail verschicken.

ChatGPT schreibt die E-Mail

Versenden der E-Mail

Öffnen Sie den Knoten “E-Mail senden”, um sicherzustellen, dass Ihre Anmeldedaten und Verbindungsdetails korrekt sind. Wie Sie sehen können, geben wir json.message.content.content ein, um die E-Mail zu erstellen. Damit wird der HTML-Code von ChatGPT wortwörtlich genommen und direkt in den Text der E-Mail eingefügt.

SMTP-Verbindung und Creds

Ändern Sie die “Von-E-Mail” in die SMTP-E-Mail, die Sie verwenden. Die E-Mail wird dann an die “To Email” gesendet – ändern Sie diese in Ihre persönliche E-Mail, um die Ergebnisse in Ihrem persönlichen Posteingang zu erhalten.

Versenden des E-Mail-Workflow-Knotens

Aktualisieren des Formulars zur Anzeige der Fertigstellung

Schließlich aktualisieren wir das Formular, um dem Benutzer mitzuteilen, dass der Vorgang erfolgreich war. Wenn Sie “Form Email Sent” öffnen, sehen Sie die verschiedenen Parameter für die Aktualisierung des Formulars. Wie Sie sehen können, zeigen wir eine “Abschlusskachel” an, auf der “Danke!” steht, und eine Nachricht, die besagt: “Wir haben Ihnen eine E-Mail gesendet.”

Benutzerformular Einreichung

Wir haben nun den letzten Schritt des Arbeitsablaufs abgeschlossen! Klicken Sie auf die Schaltfläche “Workflow testen”, um zu sehen, wie das Ganze abläuft.

Formular E-Mail gesendet

Die Ergebnisse

Wenn Sie sich entscheiden, den Arbeitsablauf auszuführen, wird zunächst ein Popup-Fenster angezeigt, in dem Sie aufgefordert werden, Ihr Suchformular auszufüllen. Füllen Sie das Formular aus und klicken Sie auf “Referenzen abrufen”.

Benutzerformular

Nachdem der Prozess abgeschlossen ist, sollte Ihr Formular nun wie das unten stehende aussehen. Wie Sie sehen können, sagt es “Danke!” und zeigt unsere Abschlussmeldung an.

Wenn Sie Ihren Posteingang öffnen, erhalten Sie eine neue E-Mail mit einer detaillierten Übersicht über Ihren Kandidaten mit Links zu dessen Website und LinkedIn-Profil. Darunter sehen Sie die Empfehlungen von ChatGPT für die Kontaktaufnahme und das Follow-up.

Outreach- und Follow-up-Empfehlungen

Schlussfolgerung

Mit n8n, Bright Data, OpenAI und SMTP haben Sie einen vollständig automatisierten LinkedIn Scraping- und Outreach-Workflow aufgebaut – ohne komplexen Code schreiben zu müssen. Diese leistungsstarke Einrichtung rationalisiert Ihren Rekrutierungsprozess und liefert angereicherte Kandidatenprofile und personalisierte Ansprache direkt in Ihren Posteingang.

Egal, ob Sie eine Einstellungspipeline skalieren oder die Lead-Generierung verbessern möchten, dieser Workflow ist nur der Anfang. Bright Data bietet eine ganze Reihe von Tools, um Ihre Automatisierung auf die nächste Stufe zu heben:

  • Web Unlocker: Umgehen Sie CAPTCHAs, Sperren und Bot-Erkennung, um LinkedIn und andere Websites zuverlässig zu scrapen.
  • Wohnsitz-Proxys: Greifen Sie auf echte Nutzer-IPs aus der ganzen Welt zu, um hohe Erfolgsquoten und Geo-Targeting zu gewährleisten.
  • Scraping-Browser: Ein Headless-Browser mit integrierter Proxy-Unterstützung – ideal für JavaScript-lastige Seiten.
  • Scraper-API: Verwenden Sie vorgefertigte Scraping-Vorlagen, um mühelos strukturierte Daten zu extrahieren.
  • Datensätze: Nutzen Sie vorgefertigte Datensätze für Stellenanzeigen, Unternehmensdaten und mehr, um Ihre Reichweite zu erhöhen.

Melden Sie sich für eine kostenlose Testversion an und beginnen Sie noch heute, intelligenter zu automatisieren!

Keine Kreditkarte erforderlich