Zum Hauptinhalt springen

Maps::Yandex - Parser für Yandex Maps

img

Übersicht des Parsers

Der Yandex Maps Parser sammelt Kontaktdaten von Organisationen.

Die Funktionalität von A-Parser ermöglicht es, Datenerfassungseinstellungen für die spätere Verwendung zu speichern (Presets), Zeitpläne für die Datenerfassung festzulegen und vieles mehr. Sie können die automatische Abfragevervielfältigung, die Substitution von Unterabfragen aus Dateien, das Durchlaufen von alphanumerischen Kombinationen und Listen verwenden, um die maximal mögliche Anzahl an Ergebnissen zu erhalten.

Das Speichern der Ergebnisse ist in der von Ihnen benötigten Form und Struktur möglich, dank der integrierten leistungsstarken Template-Engine Template Toolkit, die es ermöglicht, zusätzliche Logik auf die Ergebnisse anzuwenden und Daten in verschiedenen Formaten auszugeben, einschließlich JSON, SQL und CSV.

Gesammelte Daten

  • Name der Organisation
  • Adresse und Koordinaten
  • Bewertung, Anzahl der Rezensionen und Preispolitik
  • Kategorien und Tags
  • Website, soziale Netzwerke und Telefone
  • Link zum Foto und Logo
  • Beschreibung
  • Link zur Seite der Organisation auf Yandex Maps
  • Informationen zu den Öffnungszeiten der Einrichtung

Möglichkeiten

  • Koordinaten und Zoom des Suchbereichs müssen zwingend angegeben werden
  • Möglichkeit, die Anzahl der Seiten für die Datenerfassung festzulegen
  • Möglichkeit, die Sprache der Ergebnisse anzugeben
  • Möglichkeit, AntiGate zur Umgehung von Captchas zu verwenden

Anwendungsfälle

  • Erstellung einer Liste von Organisationen in einem bestimmten Gebiet
  • Gewinnung von Kontakten von Organisationen
  • Alle anderen Varianten, die die Suche nach Organisationen auf Karten beinhalten

Abfragen

Als Abfragen müssen Schlüsselwörter angegeben werden, genau so, als ob sie direkt in das Suchformular von Yandex Maps eingegeben würden, zum Beispiel:

Pizza

Ausgabebeispiele

A-Parser unterstützt eine flexible Formatierung der Ergebnisse dank der integrierten Template-Engine Template Toolkit, was es ermöglicht, Ergebnisse in beliebiger Form sowie strukturiert auszugeben, zum Beispiel als CSV oder JSON

Standardausgabe

Ergebnisformat:

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

Das Ergebnis zeigt eine Liste von Organisationen, deren Bewertungen und Adressen:

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

Ausgabe aller Kontaktdaten

Ergebnisformat:

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

Beispielergebnis:

Pirogi № 1 (4.9): Russland, Moskau, ulitsa Bolshiye Kamenshchiki, 9, str. B, 256, , Essenslieferung, Pizzerien, Bäckereien, kostenlose Lieferung, Kartenzahlung, Lebensmittellieferung, Essenslieferung, 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): Russland, Moskau, Taganskaya ulitsa, 29, str. 1, 153, 900–1500 ₽, Shisha-Bars, Bars, Pubs, Intellektuelle Spiele, Brettspiele, Sommerterrasse, Kartenzahlung, Business-Lunch, Projektor, Wi-Fi, Sportübertragungen, , +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): Russland, Moskau, ulitsa Bolshaya Dmitrovka, 7/5s1, 133, 1500–1700 ₽, Restaurants, Pizzerien, Business-Lunch, Wi-Fi, Kaffee zum Mitnehmen, Essen zum Mitnehmen, Sommerterrasse, Kartenzahlung, Sportübertragungen, 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): Russland, Moskau, Vorontsovskaya ulitsa, 6, str. 7, 68, 900–1200 ₽, Shisha-Bars, Bars, Pubs, Anticafé, Brettspiele, Behindertenparkplatz, Kartenzahlung, Craft-Bier, Online-Vorbestellung, Wi-Fi, Sportübertragungen, 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/

Ausgabe in eine CSV-Tabelle

Ergebnisformat:

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

Beispielergebnis:

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

Dump der Ergebnisse in JSON

Allgemeines Ausgabeformat:

[% 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 %]

Anfangstext:

[

Endtext:

]

Beispielergebnis:

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

Um die Optionen "Anfangstext" und "Endtext" im Task-Editor verfügbar zu machen, müssen Sie "Mehr Optionen" aktivieren.

Mögliche Einstellungen

ParameterStandardwertBeschreibung
Coordinates55.780844,37.6572693Koordinaten des Suchbereichs, obligatorischer Parameter
Zoom11Zoom, obligatorischer Parameter
Pages count5Anzahl der Seiten
LanguageEnglishAuswahl der Ergebnissprache
AntiGate presetdefaultVorkonfiguriertes Preset des Parsers Util::AntiGateUtil::AntiGate