Zurück zum Blog
Anwendungsfälle
Robert MunceanuLast updated on Apr 28, 20265 min read

Wie Sie Leads für Ihr Unternehmen abgreifen

Wie Sie Leads für Ihr Unternehmen abgreifen

Wenn Sie ein großartiges Produkt oder eine revolutionäre Idee haben, die Sie der Welt vorstellen möchten, wäre es dann nicht schade, wenn die Leute nichts davon wüssten?

Hallo und willkommen zu unserem heutigen Special! Die Lead-Generierung ist das Hauptthema dieses Artikels, und wir werden herausfinden, warum der Einsatz eines Web-Scraping-Tools uns dabei helfen kann, Leads effizient zu sammeln.

Wenn Sie bis zum Ende dabei bleiben, sehen Sie ein kurzes Beispiel für einen Web-Scraper in Aktion und erfahren, wie er Unternehmen dabei hilft, potenzielle Kunden zu finden. Lassen Sie uns ohne weitere Umschweife unsere Messer schärfen und mit der Vorspeise beginnen!

Wie Web-Scraping Ihnen helfen kann, Leads zu sammeln

Der Aufbau eines großen Pools an Leads kann einige Zeit in Anspruch nehmen, denn Sie benötigen eine ganze Menge Kontakte, um Ihr Geschäft auszubauen, und die manuelle Suche auf jeder einzelnen Website ist zeitaufwändig. Sie wollen auch nicht die Telefonnummern von jedem, sondern nur die, die für Ihr Unternehmen von Interesse sind, sodass die qualitative Auswahl noch mehr Ihrer Zeit in Anspruch nehmen wird.

Was können wir dagegen tun?

Manche Menschen bauen ihr Geschäft genau darauf auf: Sie sammeln Leads und verkaufen sie an andere Unternehmen weiter. Das klingt nach einer schnellen und einfachen Lösung, aber die Qualität ihres Lead-Pools entspricht möglicherweise nicht Ihren Standards. Außerdem kostet diese Option zweifellos Geld.

Wie können Sie das also selbst schnell und effizient erledigen? Hier kommt ein Web-Scraping-Tool ins Spiel, das Ihnen aus der Patsche hilft. Auf diese Weise können Sie nur die Leads auswählen, die Sie interessieren, indem Sie sie beispielsweise nach ihren Bewertungen sortieren.

Eine Schritt-für-Schritt-Anleitung zur Lead-Generierung mit der Web-Scraping-API

Stellen wir uns vor, wir sind eine neue Mikrobrauerei in der Stadt und möchten, dass die Leute unsere Produkte kennenlernen. Um dieses Ziel zu erreichen, müssen wir lokale Restaurants oder Kneipen kontaktieren und fragen, ob sie daran interessiert sind, unsere Produkte in ihrem Betrieb zu verkaufen.

Wie Sie das angehen, bleibt Ihnen überlassen. Wir helfen Ihnen beim Scraping, nicht beim Reden!

Zunächst müssen wir wissen, wo wir nach den benötigten Informationen suchen können, und das Internet ist dafür der beste Weg. Es gibt Verzeichnis-Websites mit Listen von Unternehmen, sortiert nach Nische, Standort, Tätigkeit und sogar Größe. In diesem Beispiel verwenden wir Yell.

Als Nächstes erstellen wir unser WebScrapingAPI-Konto und fahren mit dem Beispiel fort.

Erstelle dein WebScrapingAPI-Konto

Dieser Schritt ist einfach, da die Erstellung eines Kontos ziemlich unkompliziert ist – und keine Sorge, es ist kostenlos! Nachdem du deine Registrierung per E-Mail bestätigt hast, können wir mit dem nächsten Schritt fortfahren.

Verwenden Sie Ihren Zugangsschlüssel

Nach der Anmeldung werden Sie zum Dashboard weitergeleitet, wo Sie Informationen finden, die Ihnen beim Web-Scraping helfen. Im Bereich „Playground“ können Sie Ergebnisse mit verschiedenen Parametern testen, und wenn Sie mehr über die Verwendung der API erfahren möchten, können Sie einen Blick in die Dokumentation werfen.

Im Moment interessiert uns der Zugangsschlüssel. Dieser Schlüssel wird in unserem Projekt als Parameter verwendet, um uns bei der API zu authentifizieren.

Achte darauf, ihn niemandem mitzuteilen, da er dein kleines Geheimnis ist. Solltest du jedoch glauben, dass der Zugangsschlüssel kompromittiert wurde, kannst du den API-Schlüssel jederzeit zurücksetzen, indem du auf die oben gezeigte Schaltfläche klickst.

Integrieren Sie die WebScrapingAPI in Ihr Projekt

In diesem Schritt müssen wir unser Projekt für das Scraping vorbereiten. Du kannst jede IDE und Programmiersprache verwenden, die dir am besten gefällt, aber in diesem Beispiel verwenden wir WebStorm als IDE und der Code wird in NodeJS geschrieben.

1. Installiere die folgenden Pakete:

  • got: wird für HTTP-Anfragen verwendet
  • jsdom: hilfreich beim Parsen von HTML
  • csv-writer: zum Speichern der extrahierten Daten in einer CSV-Datei

Um die oben genannten Pakete zu installieren, gib einfach den folgenden Befehl in das Terminal deines Projekts ein: npm install got jsdom csv-writer

2. Legen Sie die Parameter für Ihre Anfragen fest

Hier geben wir die URL der Website an, die wir scrapen möchten – in unserem Fall ist das Yell – sowie natürlich den Zugriffsschlüssel, damit die WebScrapingAPI funktioniert.

const url = "https://www.yell.com/ucs/UcsSearchAction.do?keywords=restaurants%26location=United+Kingdom%26scrambleSeed=1024089043"
const params = {
   api_key: "XXXXX",
   url: url
}

3. Senden Sie die Anfrage

const response = await got('https://api.webscrapingapi.com/v1', {searchParams: params})

Die Anfrage wird zusammen mit den zuvor festgelegten Parametern an WebScrapingAPI gesendet, und wir erhalten eine Antwort, die den Roh-HTML-Code der gecrawlten Seite enthält. Als Nächstes müssen wir herausfinden, wie wir die benötigten Informationen im HTML-Code finden können.

4. Elemente untersuchen

Hier müssen wir die Website, die wir scrapen möchten, durchsuchen und die Entwicklertools nutzen, um nach den Elementen zu suchen, die die Informationen zu den einzelnen Unternehmen enthalten; in unserem Fall hat jedes Element die Klasse „businessCapsule--mainRow“.

In den oben gezeigten Bildern haben wir das Element des Unternehmensartikels genauer untersucht und festgestellt, dass sich der Name jedes Unternehmens im Tag mit der Klasse „businessCapsule--name“ befindet.

Wenn wir diesen Vorgang wiederholen, finden wir die Telefonnummer im Element mit der Klasse „business--telephoneNumber“ und die Durchschnitts- sowie Gesamtbewertung befinden sich in den Elementen mit den Klassen „startRating--average“ bzw. „starRating--total“.

5. Parsen des HTML

JSDOM hilft uns dabei, die von der WebScrapingAPI bereitgestellten Informationen zu parsen, da diese die gesamte Seite im HTML-Format zurückgibt.

const {document} = new JSDOM(response.body).window

6. Filtern der Ergebnisse

In dieser Phase durchlaufen wir alle Elemente mit der Klasse „businessCapsule--mainRow“ und extrahieren die Informationen aus den zuvor erwähnten Elementen. Die extrahierten Daten werden dann als Objekt in eine Liste aufgenommen.

const relatedElements = document.querySelectorAll('.businessCapsule--mainRow')
relatedElements.forEach(el => {
   const businessName = el.querySelector('.businessCapsule--name')
   const businessRatingAverage = el.querySelector('.starRating--average')
   const businessRatingTotal = el.querySelector('.starRating--total span')
   const businessContact = el.querySelector('.business--telephoneNumber')
   leads.push({
       businessName: businessName ? businessName.innerHTML : 'No business name',
       businessRatingAverage: businessRatingAverage ? businessRatingAverage.innerHTML : 'No ratings',
       businessRatingTotal: businessRatingTotal ? businessRatingTotal.innerHTML : 'No ratings',
       businessContact: businessContact ? businessContact.innerHTML : 'No phone number'
   })
})

7. Speichern der Daten

Das Speichern der Daten in einer CSV-Datei scheint eine gute Lösung zu sein, und hier kommt uns csv-writer zu Hilfe. Wir müssen den Pfad und den Namen der CSV-Datei im Parameter „path“ und im Parameter „header“ angeben und eine Liste von Objekten festlegen. Jedes Objekt repräsentiert eine Spalte unserer CSV-Datei. Die Eigenschaft „title“ dieser Objekte steht für den Titel der jeweiligen Spalte, während die Eigenschaft „id“ mit den Eigenschaften der Objekte in unserer Liste der Leads übereinstimmen muss.

Wenn wir nun den gesamten Code in eine async-Funktion einbinden und eine Schleife hinzufügen, um die ersten 5 Seiten mit Unternehmen zu scrapen, sollte der Code wie folgt aussehen:

const {JSDOM} = require("jsdom");
const got = require("got");

(async () => {

   const leads = []
   const nrPages = 5

   for (let page = 1; page <= nrPages; page++) {
       const url = "https://www.yell.com/ucs/UcsSearchAction.do?keywords=restaurants%26location=United+Kingdom%26scrambleSeed=1024089043%26pageNum=" + page
       const params = {
           api_key: "XXX",
           url: url
       }
       const response = await got('https://api.webscrapingapi.com/v1', {searchParams: params})
       const {document} = new JSDOM(response.body).window
       const relatedElements = document.querySelectorAll('.businessCapsule--mainRow')

       if (relatedElements) {
           relatedElements.forEach(el => {
               const businessName = el.querySelector('.businessCapsule--name')
               const businessRatingAverage = el.querySelector('.starRating--average')
               const businessRatingTotal = el.querySelector('.starRating--total span')
               const businessContact = el.querySelector('.business--telephoneNumber')
               leads.push({
                   businessName: businessName ? businessName.innerHTML : 'No business name',
                   businessRatingAverage: businessRatingAverage ? businessRatingAverage.innerHTML : 'No ratings',
                   businessRatingTotal: businessRatingTotal ? businessRatingTotal.innerHTML : 'No ratings',
                   businessContact: businessContact ? businessContact.innerHTML : 'No phone number'
               })
           })
       }
   }

   const csvWriter = require('csv-writer').createObjectCsvWriter({
       path: 'leads.csv',
       header: [
           {id: 'businessName', title: 'Business Name'},
           {id: 'businessRatingAverage', title: 'Business Average Rating'},
           {id: 'businessRatingTotal', title: 'Business No. of Ratings'},
           {id: 'businessContact', title: 'Business Phone Number'},
       ]
   })

   csvWriter.writeRecords(leads).then(() => console.log('Success!!'))

})();

Erfolg!!

Gut gemacht! Sie haben die Erfassung von Informationen über potenzielle Leads abgeschlossen.

Machen Sie WebScrapingAPI zu einem wichtigen Partner für Ihr Unternehmen

Dies ist ein schneller Weg, um Ihren eigenen Pool an Leads und potenziellen Geschäftspartnern aufzubauen. Neben der Generierung von Leads kann WebScrapingAPI Ihnen auch in weiteren Situationen helfen. Mehr darüber erfahren Sie in unserem Blog.

Je nach Ihrem Projekt bietet WebScrapingAPI verschiedene Pakete, die Ihren Anforderungen entsprechen. Wenn Sie noch nicht davon überzeugt sind, wie unser Produkt Ihr Unternehmen bereichern kann, probieren Sie doch zunächst den kostenlosen Tarif aus. Er bietet Ihnen 1000 kostenlose API-Aufrufe für den Einstieg.

Über den Autor
Robert Munceanu, Full-Stack-Entwickler @ WebScrapingAPI
Robert MunceanuFull-Stack-Entwickler

Robert Munceanu ist Full-Stack-Entwickler bei WebScrapingAPI, wo er in allen Bereichen des Produkts mitwirkt und an der Entwicklung zuverlässiger Tools und Funktionen zur Unterstützung der Plattform mitwirkt.

Los geht’s

Sind Sie bereit, Ihre Datenerfassung zu erweitern?

Schließen Sie sich den über 2.000 Unternehmen an, die WebScrapingAPI nutzen, um Webdaten im Unternehmensmaßstab ohne zusätzlichen Infrastrukturaufwand zu extrahieren.