Google Maps ist eine hilfreiche Kartenanwendung, die umfassende Informationen zu geografischen Standorten auf der ganzen Welt bietet. Außerdem ist es eine wichtige Quelle für lokale Geschäftsinformationen. Sie können damit einen Firmennamen, Adressinformationen, die Website-URL, Öffnungszeiten und mehr abrufen.
Durch das Scraping von Google Maps-Daten können Sie diese in ein organisiertes Format konvertieren, das Sie für verschiedene Zwecke verwenden können, einschließlich der Generierung von Geschäftskontakten, der Organisation von Massen-E-Mail-Kampagnen und dem Erhalt von Kontaktinformationen für die Kaltakquise.
In diesem Artikel erfahren Sie, wie Sie Google Maps im Web Scraping verwenden. Sie erfahren, wie Sie mit der Anwendung nützliche lokale Geschäftsinformationen abrufen können. Außerdem besprechen wir, wie Crawlbase Ihnen dabei helfen kann, den Datenextraktionsprozess reibungslos, schnell und lohnend zu gestalten.
Lassen Sie uns zunächst darüber sprechen, wie Sie Crawlbase zum Scraping von Google Maps-Daten.
Was ist ein Google Maps Scraper?
Es ist ein leistungsstarkes Tool, mit dem Sie Informationen zu Standorten, Regionen, Namen, Kontaktinformationen, Bewertungen, Geolokalisierung und mehr extrahieren können. Es bietet eine effizientere Methode als die Google Places API. Sie können Daten von bestimmten Orten, ganzen Städten oder sogar größeren Regionen extrahieren, indem Sie mit Schlüsselwörtern, Koordinaten oder URLs suchen.
Verwenden von Crawlbase zum Scraping von Google Maps
Crawlbase ist ein vielseitiges Tool, mit dem Sie Online-Daten in großem Umfang crawlen können. Es kann für eine Vielzahl von Datenextraktionsaufgaben verwendet werden, einschließlich des Scrapings von Google Maps. Es ist das, was Sie brauchen, um die üblichen Scraping-Herausforderungen zu überwinden und das Beste aus Ihren Bemühungen herauszuholen.
Dies sind einige Gründe, warum Crawlbase ein wichtiges Tool zum Erstellen eines Google Maps-Scrapers ist:
- Einfach zu verwenden: Crawlbase bietet eine benutzerfreundliche API, mit der Sie innerhalb weniger Minuten einen Google Maps Scraper erstellen können. Es gibt auch eine ausführliche Dokumentation mit vielen Codebeispielen zur Integration der API.
- Unterstützt anonymes Crawling: Mit Crawlbase müssen Sie sich keine Sorgen machen, dass Ihre wahre Identität beim Scraping von Google Maps preisgegeben wird. Es verfügt über einen umfangreichen Pool an Proxys und Rechenzentren, sodass Sie anonym bleiben können.
- Unterstützt erweiterte Extraktion: Crawlbase unterstützt alle Arten von Crawling-Projekten. Da es JavaScript-Rendering unterstützt, bietet es Ihnen echte Browserfunktionen zum Abrufen von Daten von modernen, komplizierten Websites, ohne dass es zu Hindernissen kommt. Außerdem können Sie damit Blockaden, CAPTCHAs und andere Zugriffsbeschränkungen umgehen, die Sie daran hindern könnten, schnell und effizient Daten zu sammeln.
- Kostenloser Testaccount: Nachdem Sie ein Konto eröffnet haben, erhalten Sie 1,000 kostenlose Credits, um die Funktionen des Tools auszuprobieren. Anschließend können Sie den Dienst einfach weiter nutzen und am Ende jedes Abrechnungszeitraums für Ihre Nutzung bezahlen.
Für dieses Google Maps Scraping Tutorial verwenden wir Crawlbase's Crawling API. Jede Anfrage an die API beginnt mit dem folgenden Basisteil:
1 | https://api.crawlbase |
Anschließend werden die folgenden beiden obligatorischen Abfragezeichenfolgenparameter benötigt:
- Eindeutiges Authentifizierungstoken: Damit sind Sie berechtigt, die API zu verwenden. Crawlbase bietet zwei Arten von Token: normale Token zum Ausführen allgemeiner Webanforderungen und JavaScript-Token zum Scraping dynamischer, mit JavaScript gerenderter Websites.
- Ziel-URL: Dies ist die URL, die Sie zum Extrahieren der Daten benötigen. Sie sollte mit HTTP oder HTTPS beginnen. Sie sollten die URL auch kodieren, um sie in ein Format zu konvertieren, das problemlos über das Internet übertragen werden kann.
So fügen Sie der API-Anfrage die obligatorischen Parameter hinzu:
1 | https://api.crawlbase.com/?token=ADD_TOKEN&url=ADD_URL |
Das ist alles, was Sie brauchen, um mit der Nutzung von Crawlbase zum Abrufen von Informationen aus dem Internet zu beginnen.
So einfach ist das!
Wenn Sie der obigen Anfrage die erforderlichen Parameterinformationen hinzufügen und sie in der Adressleiste eines Webbrowsers ausführen, wird der vollständige HTML-Code der Zielwebseite zurückgegeben.
So erstellen Sie einen Google Maps Scraper
Lassen Sie uns nun sehen, wie Sie mit Crawlbase schnell und effizient Google Maps-Daten extrahieren können. In diesem Tutorial werden wir versuchen, die Daten von New Yorker Restaurants zu extrahieren, die auf Google Maps. Für diese Aufgabe verwenden wir die Programmiersprache PHP.
Schritt 1: Holen Sie sich die Anforderungs-URL
Beginnen wir damit, dass wir zu Google Maps gehen und nach Restaurants in New York suchen.
Wie im Screenshot oben zu sehen ist, werden die Daten der Restaurants in der linken Seitenleiste der Seite bereitgestellt. Dies ist es, was wir scrapen möchten, anstatt Daten aus der gesamten Seite zu extrahieren. Der einfachste Weg zum Scrapen besteht darin, den Netzwerkverkehr des Browsers zu untersuchen und die URL abzurufen, die die Daten bereitstellt.
Um den Netzwerkverkehr des Browsers zu überprüfen, können Sie mit der rechten Maustaste irgendwo auf die linke Seitenleiste der Seite klicken und das Kontrolliere Option. Dadurch wird der Abschnitt „Entwicklertools“ unten in Ihrem Browserfenster geöffnet. Wählen Sie als Nächstes die Registerkarte „Netzwerk“. Sie sehen nun die Daten, die über das Netzwerk übertragen werden.
Um die gewünschten Daten zu laden, suchen Sie erneut nach „New Yorker Restaurants“. Anschließend können Sie „Suchen“ in das Suchfeld des Netzwerkbereichs eingeben, um die Such-URLs zu filtern.
Dadurch werden die URLs angezeigt, die mit Ihrer letzten Suche verknüpft sind. In diesem Fall befinden sich die gewünschten Daten in der ersten GET-Anfrage, die die Daten der Restaurants im JSON-Format liefert.
Wenn Sie auf die Zeile mit der Anfrage klicken, wird ein neuer rechter Bereich angezeigt. Der Bereich enthält weitere Informationen zur Anfrage. Unter dem Headers Markieren und kopieren Sie die URL. Dies ist die URL, die zum Abrufen der in Google Maps angezeigten Daten verwendet wird. Dies ist die URL, die wir zum Scrapen der Restaurantdaten verwenden werden.
Dies ist die URL, die wir abgerufen haben:
1 | https://www.google.com/search?tbm=map&authuser=0&hl=en&gl=ke&pb=!4m12!1m3!1d13288.926258283986!2d-74.02334913898135!3d40.73841320805614!2m3!1f0!2f0!3f0!3m2!1i1366!2i211!4f13.1!7i20!10b1!12m8!1m1!18b1!2m3!5m1!6e2!20e3!10b1!16b1!19m4!2m3!1i360!2i120!4i8!20m65!2m2!1i203!2i100!3m2!2i4!5b1!6m6!1m2!1i86!2i86!1m2!1i408!2i240!7m50!1m3!1e1!2b0!3e3!1m3!1e2!2b1!3e2!1m3!1e2!2b0!3e3!1m3!1e3!2b0!3e3!1m3!1e8!2b0!3e3!1m3!1e3!2b1!3e2!1m3!1e10!2b0!3e3!1m3!1e10!2b1!3e2!1m3!1e9!2b1!3e2!1m3!1e10!2b0!3e3!1m3!1e10!2b1!3e2!1m3!1e10!2b0!3e4!2b1!4b1!9b0!22m6!1sVgY-YP-eBdqg5NoPuc2f4A8:2!2s1i:0,t:11886,p:VgY-YP-eBdqg5NoPuc2f4A8:2!7e81!12e5!17sVgY-YP-eBdqg5NoPuc2f4A8:92!18e15!24m54!1m16!13m7!2b1!3b1!4b1!6i1!8b1!9b1!20b0!18m7!3b1!4b1!5b1!6b1!9b1!13b0!14b0!2b1!5m5!2b1!3b1!5b1!6b1!7b1!10m1!8e3!14m1!3b1!17b1!20m2!1e3!1e6!24b1!25b1!26b1!29b1!30m1!2b1!36b1!43b1!52b1!54m1!1b1!55b1!56m2!1b1!3b1!65m5!3m4!1m3!1m2!1i224!2i298!89b1!26m4!2m3!1i80!2i92!4i8!30m0!34m16!2b1!3b1!4b1!6b1!8m4!1b1!3b1!4b1!6b1!9b1!12b1!14b1!20b1!23b1!25b1!26b1!37m1!1e81!42b1!47m0!49m1!3b1!50m4!2e2!3m2!1b1!3b1!65m0!69i544&q=New york restaurants&oq=New york restaurants&gs_l=maps.3..38i39i129k1j38i39i129i444k1j38i426k1l3.0.0.2.48644.1.1.0.0.0.0.713.713.6-1.1.0....0...1ac..64.maps..0.1.713....0.&tch=1&ech=2&psi=VgY-YP-eBdqg5NoPuc2f4A8.1614677593039.1 |
Als Nächstes bereinigen wir die Anforderungs-URL, indem wir die folgenden Abfragezeichenfolgenparameter entfernen, die möglicherweise nicht erforderlich sind:
- oq
- gs_l
- tch
- alle
- psi
So sieht die endgültige URL aus:
1 | https://www.google.com/search?tbm=map&authuser=0&hl=en&gl=ke&pb=!4m12!1m3!1d13288.926258283986!2d-74.02334913898135!3d40.73841320805614!2m3!1f0!2f0!3f0!3m2!1i1366!2i211!4f13.1!7i20!10b1!12m8!1m1!18b1!2m3!5m1!6e2!20e3!10b1!16b1!19m4!2m3!1i360!2i120!4i8!20m65!2m2!1i203!2i100!3m2!2i4!5b1!6m6!1m2!1i86!2i86!1m2!1i408!2i240!7m50!1m3!1e1!2b0!3e3!1m3!1e2!2b1!3e2!1m3!1e2!2b0!3e3!1m3!1e3!2b0!3e3!1m3!1e8!2b0!3e3!1m3!1e3!2b1!3e2!1m3!1e10!2b0!3e3!1m3!1e10!2b1!3e2!1m3!1e9!2b1!3e2!1m3!1e10!2b0!3e3!1m3!1e10!2b1!3e2!1m3!1e10!2b0!3e4!2b1!4b1!9b0!22m6!1sVgY-YP-eBdqg5NoPuc2f4A8:2!2s1i:0,t:11886,p:VgY-YP-eBdqg5NoPuc2f4A8:2!7e81!12e5!17sVgY-YP-eBdqg5NoPuc2f4A8:92!18e15!24m54!1m16!13m7!2b1!3b1!4b1!6i1!8b1!9b1!20b0!18m7!3b1!4b1!5b1!6b1!9b1!13b0!14b0!2b1!5m5!2b1!3b1!5b1!6b1!7b1!10m1!8e3!14m1!3b1!17b1!20m2!1e3!1e6!24b1!25b1!26b1!29b1!30m1!2b1!36b1!43b1!52b1!54m1!1b1!55b1!56m2!1b1!3b1!65m5!3m4!1m3!1m2!1i224!2i298!89b1!26m4!2m3!1i80!2i92!4i8!30m0!34m16!2b1!3b1!4b1!6b1!8m4!1b1!3b1!4b1!6b1!9b1!12b1!14b1!20b1!23b1!25b1!26b1!37m1!1e81!42b1!47m0!49m1!3b1!50m4!2e2!3m2!1b1!3b1!65m0!69i544&q=New york restaurants |
Schritt 2: Untersuchen der zurückgegebenen Daten
Lassen Sie uns nun eine Anfrage mit der erfassten URL stellen und untersuchen, wie die zurückgegebenen Daten aussehen. Dies wird im nächsten Schritt beim Erstellen der Scraping-Logik hilfreich sein.
Wir werden das benutzen PHP cURL-Bibliothek um eine GET-Anfrage zu stellen und die Google Maps-Daten abzurufen. Da Crawlbase erfordert, dass URLs codiert werden, verwenden wir die integrierte URLcode() Funktion zum Kodieren der erfassten URL.
In diesem Fall verwenden wir das normale Token von Crawlbase, um die Anfrage zu stellen.
Hier ist der Code:
1 |
|
Wenn wir den obigen Code ausführen, erhalten wir in einem Browser folgende Ausgabe:
Wenn Sie die zurückgegebenen Daten in ein JSON-Validierungstool wie dieser JSON-Viewerkönnen Sie einige nützliche Beobachtungen machen. Sie werden beispielsweise feststellen, dass durch das Entfernen der ersten vier Zeichen die Daten in ein gültiges JSON-Format umgewandelt werden.
Sie werden auch feststellen, dass die Daten in Arrays enthalten sind, die ineinander verschachtelt sind. Beispielsweise sind die Daten der ersten 20 Restaurants im folgenden markierten Abschnitt enthalten:
Wenn wir ein Array erweitern, können wir Informationen zu jedem Restaurant finden. Wenn wir beispielsweise das verschachtelte Array Nummer 1 erweitern, werden Sie feststellen, dass die Details des Restaurants im Array Nummer 14 enthalten sind. Dies ist das Muster in allen Daten.
Beispielsweise steht der Name des Restaurants unter der Nummer 11:
Das Restaurant befindet sich an der Hausnummer 18:
Die Telefonnummer des Restaurants finden Sie unter der Nummer 178:
Schritt 3: Erstellen der Scraping-Logik
Wie bereits erwähnt, werden die zurückgegebenen Daten durch das Entfernen der ersten vier Zeichen in ein gültiges JSON-Format umgewandelt. Dadurch wird das Durchlaufen der Daten möglich.
Hier ist der Code dafür:
1 | $Antwortdaten = substr($Antwortdaten, 4-1); |
Auch das Ersetzen der null Werte mit leeren Zeichenfolgen in der zurückgegebenen Antwort erleichtern die Handhabung der Daten.
Hier ist der Code dafür:
1 | $Antwortdaten = str_replace("null",, '"",', $Antwortdaten); |
Als nächstes verwenden wir die eingebaute json_decode Funktion, um die JSON-String-Daten in eine PHP-Objektvariable umzuwandeln. Wir setzen auch die was immer dies auch sein sollte. Parameter, um das zurückgegebene Objekt in ein assoziatives Array zu konvertieren.
Hier ist der Code:
1 | $scraped_data = json_decode($Antwortdaten, was immer dies auch sein sollte.); |
Als nächstes verwenden wir die isset Funktion, um zu prüfen, ob die Daten der Restaurants vorhanden sind. Den Rest der Scraping-Logik platzieren wir in dieser Funktion.
Dann verwenden wir die foreach Schleife, um das Array zu durchlaufen und Instanzen zu finden, in denen das Array mit der Nummer 14 vorkommt. Denken Sie daran, dass die Daten, die wir brauchen, im Array mit der Nummer 14 enthalten sind.
Lassen Sie uns zum Schluss nach den Vorkommen der Namen, Standorte und Telefonnummern der Restaurants suchen.
Hier ist der Code:
1 | if (isset($scraped_data[0][1])) |
Zusammenfassung
Hier ist der vollständige Code zur Verwendung von Crawlbase zum Scrapen von Google Maps:
1 |
|
Wenn wir den Code ausführen, erhalten wir folgendes Ergebnis (der Kürze halber gekürzt):
Wir haben es geschafft!
Es ist uns gelungen, Daten aus Google Maps zu extrahieren.
Scrapen Sie Google Maps-Daten mit Crawlbase
So scrapen Sie Google Maps mit Crawlbase. Mit Crawlbase können Sie Kartendaten schnell und effizient extrahieren – und dabei anonym bleiben.
Mit diesem Tool können Sie Onlinedaten abrufen, ohne sich um Zugriffsbeschränkungen sorgen zu müssen. Sie können damit unstrukturierte Informationen von jeder beliebigen Webseite extrahieren und die Daten problemlos in Ihre Arbeitsumgebung importieren.
Klicken Sie hier, um zu erstellen ein kostenloses Crawlbase-Konto.
Viel Spaß beim Schaben!