Indice

Scraping di Google Maps in Node.js puro

Un buon livello di conoscenza della programmazione informatica, dell'emulazione del browser, dei proxy e del risolutore reCAPTCHA è importante per estrarre Google Maps. Allo stesso modo, è necessario essere preparati ad affrontare qualsiasi modifica che Google potrebbe apportare ai suoi contenuti adattivi.

Per utilizzare efficacemente l'emulazione del browser, è necessario prima simulare le azioni dell'utente reale. Utilizzando Selenio o altri emulatori di browser può essere un'opzione valida.

Quindi, è necessario utilizzare deleghe in secondo luogo se volete proteggere l'indirizzo IP del vostro posto di lavoro o della vostra residenza privata. In questo modo, potrete richiedere siti web dagli indirizzi IP di altri utenti.

Non si vuole che gli IP vengano scambiati ogni volta che si verifica un reCAPTCHA, quindi si può aggiungere un parametro risolutore di reCAPTCHA al vostro sistema, poiché Google potrebbe comunque visualizzare un reCAPTCHA e collegarlo ad alcuni dei vostri IP nonostante la raccolta di strumenti. Questo potrebbe accadere anche se avete una buona quantità di traffico.

Inoltre, a volte Google può cambiare le informazioni fornite. Un semplice test giornaliero è sufficiente per risolvere il problema.

Mettere in atto uno scraper può essere un processo lungo, ma alla fine si può fare e sviluppare. Per ulteriori informazioni sullo scraping di Google Maps utilizzando Python e Selenium, consultate questa guida dettagliata: How to Scrape Google Maps with Python and Selenium.

Scraping di Google Maps con il pacchetto Outscraper Node.js

Utilizzando il Outscraper Libreria Node.js migliorerà la qualità dello scraping di Google Maps. Fornisce un comodo accesso alle API di Outscraper da applicazioni scritte nel linguaggio Node.js che permette di utilizzare Servizi di Outscraper dal codice.

Si può iniziare installando il pacchetto e creare un account su Outscraper.

Installazione

Installare l'SDK Outscraper eseguendo il seguente comando:

				
					npm install outscraper --save
# Or
yarn add outscraper
				
			

Inizializzazione

Inizializzare il client Outscraper importando la classe e aggiungendo la chiave API segreta. È possibile generare la chiave API su la pagina del profilo.

				
					const Outscraper = require('outscraper');
// Or using ES modules:
import Outscraper from 'outscraper';

let client = new Outscraper('SECRET_API_KEY');
				
			

Esempi di utilizzo

Ecco alcuni esempi di come è possibile effettuare lo scraping di luoghi da Google Maps utilizzando le query di ricerca:

				
					// Search for businesses in specific locations:
client.googleMapsSearchV2(['restaurants brooklyn usa'], limit=20, language='en', region='us').then(response => {
  console.log(response);
});


// Scrap Places by Two Queries
client.googleMapsSearchV2(
  ['restaurants brooklyn usa', 'bars brooklyn usa'],
  limit=50, // limit of palces per each query
  language='en',
  region='US',
).then(response => {
  response.forEach(queryPlaces => {
    queryPlaces.forEach(place => {
      console.log('--------------------');
      console.log('query: ', place.query);
      console.log('name: ', place.name);
      console.log('phone: ', place.phone);
      console.log('site: ', place.site);
    });
  });
});
				
			

È anche possibile estrarre i dati utilizzando l'Id del luogo:

				
					// Get data of the specific place by id
client.googleMapsSearchV2(['ChIJrc9T9fpYwokRdvjYRHT8nI4'], language='en').then(response => {
  console.log(response);
});

// Scrap Places by Place Ids
client.googleMapsSearchV2(
  ["ChIJ8ccnM7dbwokRy-pTMsdgvS4", "ChIJN5X_gWdZwokRck9rk2guJ1M", "ChIJxWLy8DlawokR1jvfXUPSTUE"],
  limit=1, // limit of palces per each query
).then(response => {
  response.forEach(queryPlaces => {
    queryPlaces.forEach(place => {
      console.log('--------------------');
      console.log('name: ', place.name);
      console.log('place_id: ', place.place_id);
    });
  });
});
				
			

Provate subito l'SDK Outscraper

L'SDK Outscraper ha reso semplice e fornisce un modo efficiente per eseguire facilmente lo scraping di Google Maps con Node.js. Basta iscriversi per provare il nostro livello gratuito.

Domande frequenti

Domande e risposte più frequenti

È possibile effettuare lo scraping dei risultati di Google Map utilizzando l'SDK Outscraper. Specificare le query di ricerca, la lingua e altri parametri e inviare la richiesta.
npm install outscraper --save
# Oppure
aggiungere outscraper
const Outscraper = require('outscraper');
// O utilizzando i moduli ES:
importare Outscraper da 'outscraper';

let client = new Outscraper('SECRET_API_KEY');
// Ricerca di aziende in luoghi specifici:
client.googleMapsSearchV2(['restaurants brooklyn usa'], limit=20, language='en', region='us').then(response => {
  console.log(response);
});


// Scrap Places da due query
client.googleMapsSearchV2(
  ['ristoranti brooklyn usa', 'bar brooklyn usa'],
  limit=50, // limite di luoghi per ogni ricerca
  language='en',
  region='US',
).then(response => {
  response.forEach(queryPlaces => {
    queryPlaces.forEach(place => {
      console.log('--------------------');
      console.log('query: ', place.query);
      console.log('nome: ', luogo.nome);
      console.log('phone: ', place.phone);
      console.log('site: ', place.site);
    });
  });
});

Lo scraping di Google Maps richiede una buona conoscenza della codifica, dell'emulazione del browser, dei proxy e della risolutore di reCAPTCHA. Inoltre, dovreste essere pronti ad affrontare le modifiche che Google potrebbe apportare ai contenuti dinamici.

Google Maps non consente lo scraping. Tuttavia, lo scraping e l'estrazione di dati pubblici sono protetti dal Primo Emendamento della Costituzione degli Stati Uniti.

Categorie: API

Yunus

Marketer, scrittore di contenuti, sviluppatore dell'esperienza del cliente - Facebook | Linkedin | Twitter

0 Comments

Lascia un commento

Segnaposto avatar