Vai al contenuto principale

Maps::Yandex - Scraper di Yandex Maps

img

Panoramica dello scraper

Lo scraper di Yandex Maps raccoglie i dati di contatto delle organizzazioni.

Le funzionalità di A-Parser consentono di salvare le impostazioni di scraping per un uso futuro (preset), impostare pianificazioni di scraping e molto altro. È possibile utilizzare la generazione automatica delle query, la sostituzione di sotto-query da file, la combinazione di stringhe alfanumeriche e liste per ottenere il massimo numero possibile di risultati.

Il salvataggio dei risultati è possibile nel formato e nella struttura desiderati, grazie al potente motore di modelli integrato Template Toolkit che consente di applicare logica aggiuntiva ai risultati e di esportare i dati in vari formati, tra cui JSON, SQL e CSV.

Dati raccolti

  • Nome dell'organizzazione
  • Indirizzo e coordinate
  • Valutazione, numero di recensioni e politica dei prezzi
  • Categorie e tag
  • Sito web, social network e numeri di telefono
  • Link a foto e logo
  • Descrizione
  • Link alla pagina dell'organizzazione su Yandex Maps
  • Informazioni sugli orari di apertura

Funzionalità

  • È obbligatorio specificare le coordinate e lo zoom dell'area in cui viene effettuata la ricerca
  • Possibilità di impostare il numero di pagine per la raccolta dati
  • Possibilità di specificare la lingua dei risultati
  • Possibilità di utilizzare AntiGate per bypassare i captcha

Casi d'uso

  • Raccolta di un elenco di organizzazioni presenti in una determinata area
  • Ottenimento dei contatti delle organizzazioni
  • Qualsiasi altro scenario che implichi la ricerca di organizzazioni sulle mappe

Query

Come query è necessario specificare le parole chiave, esattamente come se venissero inserite direttamente nel modulo di ricerca di Yandex Maps, ad esempio:

pizza

Esempi di output dei risultati

A-Parser supporta la formattazione flessibile dei risultati grazie al motore di modelli integrato Template Toolkit, che gli consente di produrre risultati in forma libera o strutturata, come CSV o JSON.

Output predefinito

Formato del risultato:

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

Il risultato mostra un elenco di organizzazioni, le loro valutazioni e indirizzi:

Pirogi № 1 (4.9): Russia, Mosca, ulitsa Bolshie Kamenshiki, 9, str. B
Einstein lounge (4.8): Russia, Mosca, Taganskaya ulitsa, 29, str. 1
Gusto (4.1): Russia, Mosca, ulitsa Bolshaya Dmitrovka, 7/5s1
Friends (4.4): Russia, Mosca, Krasnobogatyrskaya ulitsa, 90, str. 2
Shisha City (4.4): Russia, Mosca, Vorontsovskaya ulitsa, 6, str. 7
Jacks (4.4): Russia, Mosca, 1-ya Frezernaya ulitsa, 2/1s10
Ristorante Guilty Pleasure (4.3): Russia, Mosca, Oruzheyny pereulok, 15A
White Fox (4.3): Russia, Mosca, Bolshoy Drovyanoy pereulok, 6

Output di tutti i dati di contatto

Formato del risultato:

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

Esempio di risultato:

Pirogi № 1 (4.9): Russia, Mosca, ulitsa Bolshie Kamenshiki, 9, str. B, 256, , Consegna cibo, Pizzerie, Panifici, consegna gratuita, pagamento con carta, consegna spesa, consegna cibo, https://piroginomerodin.ru/, +7 (499) 642-32-71, +7 (495) 127-78-47, https://avatars.mds.yandex.net/get-altay/4489303/2a000001787d1771aebf8b4b849d986caea1/XXXL, 37.65577,55.738421, https://vk.com/piroginomerodin, https://www.instagram.com/piroginomerodin/, https://avatars.mds.yandex.net/get-tycoon/474201/2a0000016dd037b101f0cd4ad3968416440e/priority-headline-logo, , https://yandex.ru/maps/org/105121172016/
Einstein lounge (4.8): Russia, Mosca, Taganskaya ulitsa, 29, str. 1, 153, 900–1500 ₽, Hookah bar, Bar, pub, Giochi di intelligenza, giochi da tavolo, veranda estiva, pagamento con carta, business lunch, proiettore, Wi-Fi, trasmissioni sportive, , +7 (968) 068-99-09, https://avatars.mds.yandex.net/get-altay/2419289/2a000001748889d4246610a4f452790b8eee/XXXL, 37.668036,55.739651, https://www.instagram.com/einstein_lounge/, https://avatars.mds.yandex.net/get-tycoon/1635364/2a00000170a408e3bda96d25bf44857eed75/priority-headline-logo, , https://yandex.ru/maps/org/127811263445/
Gusto (4.1): Russia, Mosca, ulitsa Bolshaya Dmitrovka, 7/5s1, 133, 1500–1700 ₽, Ristoranti, Pizzerie, business lunch, Wi-Fi, caffè da asporto, cibo da asporto, veranda estiva, pagamento con carta, trasmissioni sportive, http://www.gusto-moscow.ru/, +7 (495) 650-69-22, https://avatars.mds.yandex.net/get-altay/2887807/2a0000017357f4fe86d86cd5d3e300855b86/XXXL, 37.614142,55.760285, https://www.facebook.com/pages/gusto-итальянская-кухня/300193353486996, https://www.instagram.com/gusto.rest/, , , https://yandex.ru/maps/org/1080982853/
Shisha City (4.4): Russia, Mosca, Vorontsovskaya ulitsa, 6, str. 7, 68, 900–1200 ₽, Hookah bar, Bar, pub, Anticafé, giochi da tavolo, parcheggio per disabili, pagamento con carta, birra artigianale, preordine online, Wi-Fi, trasmissioni sportive, http://www.shishataganka.ru/, +7 (958) 100-62-71, https://avatars.mds.yandex.net/get-altay/212783/2a0000015d991abf6d89fa812daac5491c4f/XXXL, 37.654414,55.739423, https://vk.com/shishacitytaganka, https://www.facebook.com/shishacitytaganka, https://www.instagram.com/shishacitytaganka, https://avatars.mds.yandex.net/get-tycoon/479792/2a000001746e2044d0177e25adeba8e943ac/priority-headline-logo, , https://yandex.ru/maps/org/1695943598/

Output in tabella CSV

Formato del risultato:

[% FOREACH serp; 
tools.CSVline(name, rating, address, reviews, price);
END %]

Esempio di risultato:

"Pirogi № 1",4.9,"Russia, Mosca, ulitsa Bolshie Kamenshiki, 9, str. B",256,
"Einstein lounge",4.8,"Russia, Mosca, Taganskaya ulitsa, 29, str. 1",153,"900–1500 ₽"
Gusto,4.1,"Russia, Mosca, ulitsa Bolshaya Dmitrovka, 7/5s1",134,"1500–1700 ₽"
"Shisha City",4.4,"Russia, Mosca, Vorontsovskaya ulitsa, 6, str. 7",68,"900–1200 ₽"
"Kalyannaya Kult Game",4.5,"Russia, Mosca, ulitsa Shabolovka, 2",66,"1200–1500 ₽"

Dump dei risultati in JSON

Formato comune del risultato:

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

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

FOREACH item IN p1.serp;
obj.serp.push({
name = item.name
rating = item.rating
address = item.address
phones = item.phones
});
END;

obj.json %]

Testo iniziale:

[

Testo finale:

]

Esempio di risultato:

[{
"query": "pizza",
"serp": [
{
"name": "Pirogi № 1",
"address": "Russia, Mosca, ulitsa Bolshie Kamenshiki, 9, str. B",
"phones": "+7 (499) 642-32-71, +7 (495) 127-78-47",
"rating": "4.9"
},
{
"name": "Einstein lounge",
"address": "Russia, Mosca, Taganskaya ulitsa, 29, str. 1",
"phones": "+7 (968) 068-99-09",
"rating": "4.8"
},
{
"name": "Gusto",
"address": "Russia, Mosca, ulitsa Bolshaya Dmitrovka, 7/5s1",
"phones": "+7 (495) 650-69-22",
"rating": "4.1"
},
]
}]
suggerimento

Per rendere disponibili le opzioni "Prepend text" e "Append text" nell'Editor delle attività, è necessario attivare "More options".

Impostazioni possibili

ParametroValore predefinitoDescrizione
Coordinates37.6572693,55.780844Coordinate dell'area di ricerca, parametro obbligatorio — longitudine, latitudine, come nell'URL (ll=), e non come quando si copiano le coordinate con il pulsante sulla mappa
Zoom11Zoom, parametro obbligatorio
Pages count5Numero di pagine
LanguageEnglishScelta della lingua dei risultati
AntiGate presetdefaultPreset preconfigurato dello scraper Util::AntiGateUtil::AntiGate