Ga naar de hoofdinhoud

Maps::Google - Google Maps Scraper

img

Overzicht van de scraper

De Google Maps scraper verzamelt contactgegevens van organisaties vanaf de eerste pagina met resultaten.

De functionaliteit van A-Parser stelt u in staat om scraping-instellingen op te slaan voor toekomstig gebruik (presets), scraping-schema's in te stellen en nog veel meer. U kunt automatische query-multiplicatie gebruiken, subquery's uit bestanden invoegen, alfanumerieke combinaties en lijsten doorlopen om het maximaal mogelijke aantal resultaten te verkrijgen.

Het opslaan van resultaten is mogelijk in de vorm en structuur die u nodig heeft, dankzij de ingebouwde krachtige sjabloon-engine Template Toolkit waarmee u extra logica op de resultaten kunt toepassen en gegevens in verschillende formaten kunt uitvoeren, waaronder JSON, SQL en CSV.

Praktijkvoorbeelden van de scraper

Verzamelde gegevens

  • Naam van de organisatie
  • Adres en coördinaten
  • Beoordeling, aantal reviews en prijsbeleid
  • Categorieën en tags
  • Website en telefoonnummer
  • Link naar foto
  • Link naar de bedrijfspagina
  • Link naar "Claim dit bedrijf" (Engels: Claim this business)
  • Bedrijfsstatus
  • Link naar boekingsservice

Mogelijkheden

  • Het is verplicht om coördinaten en de zoom van het zoekgebied op te geven
  • Momenteel worden alleen gegevens van de 1e pagina verzameld
  • Mogelijkheid om het land van waaruit wordt gezocht en de taal van de resultaten op te geven
  • Automatische verwerking van coördinaten in een opgegeven regio met de optie Collect full region
  • Mogelijkheid om resultaten te filteren op de status Temporarily closed of Permanently closed

Toepassingen

  • Verzamelen van een lijst met organisaties in een bepaald gebied
  • Verkrijgen van contactgegevens van organisaties
  • Alle andere scenario's waarbij organisaties op kaarten moeten worden gezocht

Query's

Als query's moeten trefwoorden worden opgegeven, op dezelfde manier als wanneer u ze rechtstreeks in het zoekveld van Google Maps zou invoeren, bijvoorbeeld:

pizza

Opties voor resultaatweergave

A-Parser ondersteunt flexibele formattering van resultaten dankzij de ingebouwde sjabloon-engine Template Toolkit, waardoor resultaten in een vrije vorm kunnen worden weergegeven, evenals in gestructureerde formaten zoals CSV of JSON

Standaard uitvoer

Resultaatformaat:

$serp.format('$name ($rating): $address\n')

Het resultaat toont een lijst met organisaties, hun beoordelingen en adressen:

Vivat Pizza (4.7): Prospekt Marshala Zhukova, 19/1, Moscow, Russia, 123308
Premier Pizza (4.2): pr-kt Leningradskiy, 37, Moscow, Russia, 125167
City Pizza (5): Ordynka M. ul. 19, Moskva, 119017, Moscow, Russia, 115035
Dodo Pizza (4.4): Ulitsa Miklukho-Maklaya, 36A, Moscow, Russia, 117198
Pizza 22 cm (4.6): Ulitsa Solyanka, 1/2, Moscow, Russia, 109028
Zhar Pitstsa (4.7): Ulitsa Industrial'naya, 15, str. 2, Mytishchi, Moscow Oblast, Russia, 141006
Pizzeria Allo! Pizza | Kafe, dostavka edy Krymskaya (4.4): Sevastopol Ave, 15k1, 1 etazh, Moscow, Russia, 117447
City Pizza (2.3): 4-Y Syromyatnicheskiy Pereulok, 3/5, Moscow, Russia, 105120
Domino's Pizza (3.8): Beregovoy Proyezd, 5A korpus 1, Moscow, Russia, 121087
Domino's Pizza (4.5): Ulitsa Fonvizina, 17, Moscow, Russia, 127322
City Pizza (4.2): Malomoskovskaya Ulitsa, 22, Moscow, Russia, 129626
Allo! Pizza (4.5): Tkatskaya Ulitsa, 32A, Moscow, Russia, 105187
Pizza Pizza Time (4.3): SNT Zelenaya zona, Lyubertsy, Moscow, Russia, 111674
Vivat Pizza (4.7): Sirenevyy Bul'var, 15a, Moscow, Russia, 105425
Allo! Pizza (4.4): Shcholkovskoye Shosse, 72, Moscow, Russia, 107497
Dodo Pizza (4.5): Ulitsa Initsiativnaya, 13, Lyubertsy, Moscow Oblast, Russia, 140009
Domino's Pizza (4.5): Ulitsa Panferova, 4, Moscow, Russia, 119261
Allo! Pizza (4.5): Ulitsa Kostromskaya, 14B, Moscow, Russia, 127549
Allo! Pizza (4.5): Ulitsa Lyapidevskogo, 4 stroenie 2, Moscow, Russia, 125581
Dodo Pizza (4.6): Staraya Basmannaya Ulitsa, 14/2s4, Moscow, Russia, 105064

Uitvoer van alle contactgegevens

Resultaatformaat:

$serp.format('$name ($rating): $address, $reviews, $price,  $categories, $tags, $site, $phones, $photo, $coordinates\n')

Voorbeeldresultaat:

Vivat Pizza (4.7): Prospekt Marshala Zhukova, 19/1, Moscow, Russia, 123308, 558, $$,  Pizza restaurant, Italian restaurant, Restaurant, Sushi restaurant, No-contact delivery, Delivery, Takeaway, Great cocktails, Wheelchair-accessible car park, Wheelchair-accessible entrance, Beer, Late-night food, Wine, Dessert, Bar on site, Good for kids, High chairs, Casual, Cosy, Groups, http://www.vivatpizza.ru/, +74957808090, https://lh5.googleusercontent.com/p/AF1QipN7H4fucI4JR1xGP6bdXorluhq9eq4l85QvCKXx=w426-h240-k-no, 55.7753678,37.4888493
Premier Pizza (4.2): pr-kt Leningradskiy, 37, Moscow, Russia, 125167, 5, , Pizza restaurant, Pizza takeaway, Delivery, Takeaway, Dine-in, Good for kids, Casual, Groups, http://premierpizza.ru/, +74952210717, , 55.7727005,37.5315456
City Pizza (5): Ordynka M. ul. 19, Moskva, 119017, Moscow, Russia, 115035, 1, $$, Pizza restaurant, Pizza delivery, Delivery, Dine-in, https://www.citypizza.ru/, , https://streetviewpixels-pa.googleapis.com/v1/thumbnail?panoid=dowqjCRyBVGFlZWPNAKQeg&cb_client=search.gws-prod.gps&w=408&h=240&yaw=87.83791&pitch=0&thumbfov=100, 55.741704999999996,37.6258066
Pizza 22 cm (4.6): Ulitsa Solyanka, 1/2, Moscow, Russia, 109028, 1309, $$, Pizza restaurant, Italian restaurant, Takeaway, Dine-in, Delivery, Wheelchair-accessible entrance, Dessert, Good for kids, Casual, Cosy, Groups, http://pizza22cm.ru/#msk, +79264297222, https://lh5.googleusercontent.com/p/AF1QipOYxiI0ITxnRGGltyFFW1Y8MmcPZMoJMz9dd77u=w408-h272-k-no, 55.754531799999995,37.6380833

Uitvoer van alle contactgegevens naar een CSV-tabel

Resultaatformaat:

[% FOREACH serp;
tools.CSVline(query, name, rating, address, reviews, price, categories, tags, site, phones, photo, coordinates);
END %]

Voorbeeldresultaat:

"pizza","Vivat Pizza",4.7,"Prospekt Marshala Zhukova, 19/1, Moscow, Russia, 123308",558,$$,"Pizza restaurant, Italian restaurant, Restaurant, Sushi restaurant","No-contact delivery, Delivery, Takeout, Great cocktails, Wheelchair-accessible entrance, Wheelchair-accessible parking lot, Beer, Late-night food, Wine, Dessert, Bar on-site, Good for kids, High chairs, Casual, Cozy, Groups",http://www.vivatpizza.ru/,+74957808090,https://lh5.googleusercontent.com/p/AF1QipN7H4fucI4JR1xGP6bdXorluhq9eq4l85QvCKXx=w426-h240-k-no,"55.7753678,37.4888493"
"pizza","Premier Pizza",4.2,"pr-kt Leningradskiy, 37, Moscow, Russia, 125167",5,,"Pizza restaurant, Pizza takeaway","Delivery, Takeout, Dine-in, Good for kids, Casual, Groups",http://premierpizza.ru/,+74952210717,,"55.7727005,37.5315456"
"pizza","Pizza 22 cm",4.6,"Ulitsa Solyanka, 1/2, Moscow, Russia, 109028",1309,$$,"Pizza restaurant, Italian restaurant","Takeout, Dine-in, Delivery, Wheelchair-accessible entrance, Dessert, Good for kids, Casual, Cozy, Groups",http://pizza22cm.ru/#msk,+79264297222,https://lh5.googleusercontent.com/p/AF1QipOYxiI0ITxnRGGltyFFW1Y8MmcPZMoJMz9dd77u=w408-h272-k-no,"55.754531799999995,37.6380833"
"pizza","Dodo Pizza",4.4,"Ulitsa Miklukho-Maklaya, 36A, Moscow, Russia, 117198",116,$$,"Pizza restaurant, Coffee stand, Pizza delivery, Pizza takeaway","No-contact delivery, Delivery, Takeout, Dine-in, Vegetarian options, Breakfast, Lunch, Dessert, Seating, Good for kids, Casual, Cozy, Family-friendly, Groups, Debit cards, NFC mobile payments",https://dodopizza.ru/Moscow/belyaevo,+78003330060,https://lh5.googleusercontent.com/p/AF1QipOJ7jbAJEA8imRs58tf2roiESzzkLCyTsVUk2Zk=w408-h272-k-no,"55.6401172,37.533220299999996"
"pizza","Zhar Pitstsa",4.7,"Ulitsa Industrial'naya, 15, str. 2, Mytishchi, Moscow Oblast, Russia, 141006",262,,"Pizza restaurant, Pizza delivery","Delivery, Takeout",http://www.pizza-jar.ru/,+79055070171,https://lh5.googleusercontent.com/p/AF1QipMMrXJkExDf3bQphAfGYTd26LfqaZwDTPvjMQkx=w408-h544-k-no,"55.9251735,37.7667529"
"pizza","City Pizza",2.3,"4-Y Syromyatnicheskiy Pereulok, 3/5, Moscow, Russia, 105120",6,$$,"Pizza restaurant, Pizza delivery","Delivery, Dine-in",http://www.citypizza.ru/,+74959818198,https://streetviewpixels-pa.googleapis.com/v1/thumbnail?panoid=57nDhT-w0Qgu7WfJNUW60Q&cb_client=search.gws-prod.gps&w=408&h=240&yaw=28.351305&pitch=0&thumbfov=100,"55.755070599999996,37.6673556"
"pizza","Pizzeria Allo! Pizza | Kafe, dostavka edy Krymskaya",4.4,"Sevastopol Ave, 15k1, 1 etazh, Moscow, Russia, 117447",30

Opslaan van alle contactgegevens in SQL-formaat

Resultaatformaat:

[%  FOREACH serp;   "INSERT INTO serp VALUES('" _ query _ "', '"; name _ "', '"; rating _ "', '"; address _ "', '"; reviews _ "', '"; price _ "', '"; categories _ "', '"; tags _ "', '"; site _ "', '";  phones _ "', '"; photo _ "', '";  coordinates _ "')\n"; END  %]

Voorbeeldresultaat:

INSERT INTO serp VALUES('pizza', 'Vivat Pizza', '4.7', 'Prospekt Marshala Zhukova,
19/1, Moscow, Russia,
123308', '558', '$', 'Pizza restaurant, Italian restaurant, Restaurant, Sushi restaurant', 'No-contact delivery, Delivery, Takeaway, Great cocktails, Wheelchair-accessible car park, Wheelchair-accessible entrance, Beer, Late-night food, Wine, Dessert, Bar on site, Good for kids, High chairs, Casual, Cosy, Groups', 'http: //www.vivatpizza.ru/', '+74957808090', 'https://lh5.googleusercontent.com/p/AF1QipN7H4fucI4JR1xGP6bdXorluhq9eq4l85QvCKXx=w426-h240-k-no', '55.7753678,37.4888493')
INSERT INTO serp VALUES('pizza', 'Premier Pizza', '4.2', 'pr-kt Leningradskiy,
37, Moscow, Russia,
125167', '5', '', 'Pizza restaurant, Pizza takeaway', 'Delivery, Takeaway, Dine-in, Good for kids, Casual, Groups', 'http: //premierpizza.ru/', '+74952210717', '', '55.7727005,37.5315456')
INSERT INTO serp VALUES('pizza', 'City Pizza', '5', 'Ordynka M. ul. 19, Moskva,
119017, Moscow, Russia,
115035', '1', '$', 'Pizza restaurant, Pizza delivery', 'Delivery, Dine-in', 'https: //www.citypizza.ru/', '', 'https://streetviewpixels-pa.googleapis.com/v1/thumbnail?panoid=dowqjCRyBVGFlZWPNAKQeg&cb_client=search.gws-prod.gps&w=408&h=240&yaw=87.83791&pitch=0&thumbfov=100', '55.741704999999996,37.6258066')
INSERT INTO serp VALUES('pizza', 'Pizza 22 cm', '4.6', 'Ulitsa Solyanka,
1/2, Moscow, Russia,
109028', '1309', '$', 'Pizza restaurant, Italian restaurant', 'Takeaway, Dine-in, Delivery, Wheelchair-accessible entrance, Dessert, Good for kids, Casual, Cosy, Groups', 'http: //pizza22cm.ru/#msk', '+79264297222', 'https://lh5.googleusercontent.com/p/AF1QipOYxiI0ITxnRGGltyFFW1Y8MmcPZMoJMz9dd77u=w408-h272-k-no', '55.754531799999995,37.6380833')
INSERT INTO serp VALUES('pizza', 'Dodo Pizza', '4.4', 'Ulitsa Miklukho-Maklaya,
36A, Moscow, Russia,
117198', '116', '$', 'Pizza restaurant, Coffee stand, Pizza delivery, Pizza takeaway', 'No-contact delivery, Delivery, Takeaway, Dine-in, Vegetarian options, Breakfast, Lunch, Dessert, Seating, Good for kids, Casual, Cosy, Family friendly, Groups, Debit cards, NFC mobile payments', 'https: //dodopizza.ru/Moscow/belyaevo', '+78003330060', 'https://lh5.googleusercontent.com/p/AF1QipOJ7jbAJEA8imRs58tf2roiESzzkLCyTsVUk2Zk=w408-h272-k-no', '55.6401172,37.533220299999996')

Dump van alle contactgegevens naar JSON

Algemeen resultaatformaat:

[% IF notFirst;
",\n";
ELSE;
notFirst = 1;
END;

obj = {};
obj.query = query;
obj.contacts = [];

FOREACH item IN p1.serp;
obj.contacts.push({
name = item.name
rating = item.rating
address = item.address
reviews = item.reviews
price = item.price
categories = item.categories
tags = item.tags
site = item.site
phones = item.phones
photo = item.photo
coordinates = item.coordinates
});
END;

obj.json %]

Begintekst:

[

Eindtekst:

]

Voorbeeldresultaat:

[{
"contacts": [
{
"coordinates": "55.7753678,37.4888493",
"photo": "https://lh5.googleusercontent.com/p/AF1QipN7H4fucI4JR1xGP6bdXorluhq9eq4l85QvCKXx=w426-h240-k-no",
"reviews": 558,
"name": "Vivat Pizza",
"categories": "Pizza restaurant, Italian restaurant, Restaurant, Sushi restaurant",
"phones": "+74957808090",
"tags": "No-contact delivery, Delivery, Takeaway, Great cocktails, Wheelchair-accessible car park, Wheelchair-accessible entrance, Beer, Late-night food, Wine, Dessert, Bar on site, Good for kids, High chairs, Casual, Cosy, Groups",
"rating": 4.7,
"site": "http://www.vivatpizza.ru/",
"address": "Prospekt Marshala Zhukova, 19/1, Moscow, Russia, 123308",
"price": "$$"
},
{
"coordinates": "55.7727005,37.5315456",
"photo": "",
"reviews": 5,
"name": "Premier Pizza",
"categories": "Pizza restaurant, Pizza takeaway",
"phones": "+74952210717",
"tags": "Delivery, Takeaway, Dine-in, Good for kids, Casual, Groups",
"rating": 4.2,
"site": "http://premierpizza.ru/",
"address": "pr-kt Leningradskiy, 37, Moscow, Russia, 125167",
"price": ""
}

],
"query": "pizza"
}]
tip

Om de opties "Prepend text" en "Append text" beschikbaar te maken in de Taak-editor, moet u "More options" activeren.

Mogelijke instellingen

ParameterStandaardwaardeBeschrijving
Coordinates55.780844,37.6572693Coördinaten van het zoekgebied, verplichte parameter
Zoom11Zoom, verplichte parameter
CountryAuto (Based on IP)Land van waaruit wordt gezocht
LanguageEnglishTaalkeuze voor de resultaten
Collect full regionAccepteert een regio-ID (of lijst) als invoer, evenals de stap in kilometers (Step in kilometers); voor dichtbebouwde gebieden kunt u bijvoorbeeld 0.5 of 0.2 kilometer opgeven. Meer informatie. OSM Mode heeft de waarden: Location code / Location string. Meer informatie
Max pages10Maximaal aantal pagina's per query