Maps::Yandex - Scraper voor Yandex Maps

Overzicht van de scraper
De Yandex Maps scraper verzamelt contactgegevens van organisaties.
De functionaliteit van A-Parser maakt het mogelijk om instellingen voor gegevensextractie op te slaan voor toekomstig gebruik (presets), extractieschema's in te stellen en nog veel meer. U kunt automatische query-vermenigvuldiging gebruiken, sub-query'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.
Verzamelde gegevens
- Naam van de organisatie
- Adres en coördinaten
- Beoordeling, aantal reviews en prijsbeleid
- Categorieën en tags
- Website, sociale netwerken en telefoonnummers
- Link naar foto en logo
- Beschrijving
- Link naar de organisatiepagina op Yandex Maps
- Informatie over openingstijden
Mogelijkheden
- Het is verplicht om de coördinaten en zoom van het gebied op te geven waarin wordt gezocht
- Mogelijkheid om het aantal pagina's voor gegevensverzameling in te stellen
- Mogelijkheid om de taal van de resultaten op te geven
- Mogelijkheid om Antigate te gebruiken voor het omzeilen van captcha's
Toepassingen
- Verzamelen van een lijst met organisaties die aanwezig zijn in een bepaald gebied
- Verkrijgen van contactgegevens van organisaties
- Alle andere scenario's waarbij het zoeken naar organisaties op kaarten vereist is
Query's
Als query's moeten trefwoorden worden opgegeven, op dezelfde manier als wanneer ze rechtstreeks in het zoekformulier van Yandex Maps zouden worden ingevoerd, bijvoorbeeld:
pizza
Varianten van resultaatweergave
A-Parser ondersteunt flexibele formattering van resultaten dankzij de ingebouwde sjabloon-engine Template Toolkit, waardoor resultaten in een willekeurige 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:
Pirogi № 1 (4.9): Rusland, Moskou, ulitsa Bolshiye Kamenshchiki, 9, str. B
Einstein lounge (4.8): Rusland, Moskou, Taganskaya ulitsa, 29, str. 1
Gusto (4.1): Rusland, Moskou, ulitsa Bolshaya Dmitrovka, 7/5s1
Friends (4.4): Rusland, Moskou, Krasnobogatyrskaya ulitsa, 90, str. 2
Shisha City (4.4): Rusland, Moskou, Vorontsovskaya ulitsa, 6, str. 7
Jacks (4.4): Rusland, Moskou, 1-ya Frezernaya ulitsa, 2/1s10
Restaurant Guilty Pleasure (4.3): Rusland, Moskou, Oruzheyny pereulok, 15A
White Fox (4.3): Rusland, Moskou, Bolshoy Drovyanoy pereulok, 6
Uitvoer van alle contactgegevens
Resultaatformaat:
$serp.format('$name ($rating): $address, $reviews, $price, $categories, $tags, $site, $phones, $photo, $coordinates, $social, $logo, $description, $link\n')
Voorbeeld van resultaat:
Pirogi № 1 (4.9): Rusland, Moskou, ulitsa Bolshiye Kamenshchiki, 9, str. B, 256, , Maaltijdbezorging, Pizzeria's, Bakkerijen, gratis bezorging, betaling met kaart, boodschappenbezorging, maaltijdbezorging, 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): Rusland, Moskou, Taganskaya ulitsa, 29, str. 1, 153, 900–1500 ₽, Waterpijp-bars, Bars, pubs, Intellectuele spellen, bordspellen, zomerterras, betaling met kaart, zakenlunch, projector, Wi-Fi, sportuitzendingen, , +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): Rusland, Moskou, ulitsa Bolshaya Dmitrovka, 7/5s1, 133, 1500–1700 ₽, Restaurants, Pizzeria's, zakenlunch, Wi-Fi, koffie om mee te nemen, afhaalmaaltijden, zomerterras, betaling met kaart, sportuitzendingen, 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): Rusland, Moskou, Vorontsovskaya ulitsa, 6, str. 7, 68, 900–1200 ₽, Waterpijp-bars, Bars, pubs, Anticafé, bordspellen, parkeren voor gehandicapten, betaling met kaart, speciaalbier, Online reserveren, Wi-Fi, sportuitzendingen, 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/
Uitvoer naar CSV-tabel
Resultaatformaat:
[% FOREACH serp;
tools.CSVline(name, rating, address, reviews, price);
END %]
Voorbeeld van resultaat:
"Pirogi № 1",4.9,"Rusland, Moskou, ulitsa Bolshiye Kamenshchiki, 9, str. B",256,
"Einstein lounge",4.8,"Rusland, Moskou, Taganskaya ulitsa, 29, str. 1",153,"900–1500 ₽"
Gusto,4.1,"Rusland, Moskou, ulitsa Bolshaya Dmitrovka, 7/5s1",134,"1500–1700 ₽"
"Shisha City",4.4,"Rusland, Moskou, Vorontsovskaya ulitsa, 6, str. 7",68,"900–1200 ₽"
"Kalyannaya Kult Game",4.5,"Rusland, Moskou, ulitsa Shabolovka, 2",66,"1200–1500 ₽"
Dump van resultaten in JSON
Algemeen resultaatformaat:
[% 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 %]
Begintekst:
[
Eindtekst:
]
Voorbeeld van resultaat:
[{
"query": "pizza",
"serp": [
{
"name": "Pirogi № 1",
"address": "Rusland, Moskou, ulitsa Bolshiye Kamenshchiki, 9, str. B",
"phones": "+7 (499) 642-32-71, +7 (495) 127-78-47",
"rating": "4.9"
},
{
"name": "Einstein lounge",
"address": "Rusland, Moskou, Taganskaya ulitsa, 29, str. 1",
"phones": "+7 (968) 068-99-09",
"rating": "4.8"
},
{
"name": "Gusto",
"address": "Rusland, Moskou, ulitsa Bolshaya Dmitrovka, 7/5s1",
"phones": "+7 (495) 650-69-22",
"rating": "4.1"
},
]
}]
Om de opties "Prepend text" en "Append text" beschikbaar te maken in de Taak-editor, moet u "More options" activeren.
Mogelijke instellingen
| Parameter | Standaardwaarde | Beschrijving |
|---|---|---|
| Coordinates | 37.6572693,55.780844 | Coördinaten van het zoekgebied, verplichte parameter — lengtegraad, breedtegraad, zoals in de URL (ll=), en niet zoals bij het kopiëren van coördinaten met de knop op de kaart |
| Zoom | 11 | Zoom, verplichte parameter |
| Pages count | 5 | Aantal pagina's |
| Language | English | Taalkeuze voor resultaten |
| AntiGate preset | default | Vooraf geconfigureerde preset van de scraper Util::AntiGate |
