Passer au contenu principal

Maps::Yandex - Scraper Yandex Maps

img

Présentation du scraper

Le scraper Yandex Maps collecte les coordonnées des organisations.

La fonctionnalité d'A-Parser permet d'enregistrer les paramètres de collecte de données pour une utilisation ultérieure (présélections), de définir un calendrier de collecte et bien plus encore. Vous pouvez utiliser la multiplication automatique des requêtes, la substitution de sous-requêtes à partir de fichiers, l'itération de combinaisons alphanumériques et de listes pour obtenir le maximum de résultats possible.

La sauvegarde des résultats est possible dans la forme et la structure dont vous avez besoin, grâce au puissant moteur de gabarits intégré Template Toolkit qui permet d'appliquer une logique supplémentaire aux résultats et d'afficher les données dans divers formats, y compris JSON, SQL et CSV.

Données collectées

  • Nom de l'organisation
  • Adresse et coordonnées
  • Note, nombre d'avis et politique de prix
  • Catégories et tags
  • Site web, réseaux sociaux et téléphones
  • Lien vers la photo et le logo
  • Description
  • Lien vers la page de l'organisation sur Yandex Maps
  • Informations sur les horaires d'ouverture de l'établissement

Fonctionnalités

  • Il est obligatoire d'indiquer les coordonnées et le zoom de la zone dans laquelle la recherche est effectuée
  • Possibilité de définir le nombre de pages pour la collecte de données
  • Possibilité de spécifier la langue des résultats
  • Possibilité d'utiliser AntiGate pour contourner les captchas

Cas d'utilisation

  • Collecte d'une liste d'organisations présentes dans une zone donnée
  • Obtention des contacts des organisations
  • Tout autre cas impliquant la recherche d'organisations sur les cartes

Requêtes

En tant que requêtes, il est nécessaire d'indiquer des mots-clés, exactement comme si vous les saisissiez directement dans le formulaire de recherche de Yandex Maps, par exemple :

pizza

Exemples de formats de sortie

A-Parser prend en charge un formatage flexible des résultats grâce au moteur de gabarits intégré Template Toolkit, ce qui lui permet d'afficher les résultats sous une forme libre, ainsi que structurée, par exemple CSV ou JSON

Sortie par défaut

Format du résultat :

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

Le résultat affiche une liste d'organisations, leurs notes et leurs adresses :

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

Sortie de toutes les coordonnées

Format du résultat :

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

Exemple de résultat :

Pirogi № 1 (4.9): Russie, Moscou, ulitsa Bolshiye Kamenshchiki, 9, str. B, 256, , Livraison de nourriture, Pizzerias, Boulangeries, livraison gratuite, paiement par carte, livraison de produits, livraison de nourriture, 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): Russie, Moscou, Taganskaya ulitsa, 29, str. 1, 153, 900–1500 ₽, Bars à chicha, Bars, pubs, Jeux intellectuels, jeux de société, terrasse d'été, paiement par carte, business lunch, projecteur, Wi-Fi, retransmissions sportives, , +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): Russie, Moscou, rue Bolshaya Dmitrovka, 7/5s1, 133, 1500–1700 ₽, Restaurants, Pizzerias, business lunch, Wi-Fi, café à emporter, vente à emporter, terrasse d'été, paiement par carte, retransmissions sportives, 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): Russie, Moscou, Vorontsovskaya ulitsa, 6, str. 7, 68, 900–1200 ₽, Bars à chicha, Bars, pubs, Anticafé, jeux de société, parking handicapés, paiement par carte, bière artisanale, Précommande en ligne, Wi-Fi, retransmissions sportives, 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/

Sortie dans un tableau CSV

Format du résultat :

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

Exemple de résultat :

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

Dump des résultats en JSON

Format de sortie general:

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

Texte initial:

[

Texte final:

]

Exemple de résultat :

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

Pour que les options "Texte initial" et "Texte final" soient disponibles dans l'Éditeur de tâches, vous devez activer "Plus d'options".

Paramètres possibles

ParamètreValeur par défautDescription
Coordinates55.780844,37.6572693Coordonnées de la zone de recherche, paramètre obligatoire
Zoom11Zoom, paramètre obligatoire
Pages count5Nombre de pages
LanguageEnglishChoix de la langue des résultats
AntiGate presetdefaultPrésélection configurée du scraper Util::AntiGateUtil::AntiGate