Skip to main content

Maps::Yandex - Yandex Maps Scraper

img

Yandex Maps Scraper Overview​

The Yandex Maps scraper collects contact data for organizations.

A-Parser functionality allows you to save scraping settings for future use (presets), set a scraping schedule, and much more. You can use automatic query multiplication, substitution of subqueries from files, brute-forcing of alphanumeric combinations and lists to obtain the maximum possible number of results.

Saving results is possible in any form and structure you need, thanks to the built-in powerful Template Toolkit template engine, which allows you to apply additional logic to the results and output data in various formats, including JSON, SQL, and CSV.

Collected Data​

  • Organization name
  • Address and coordinates
  • Rating, number of reviews, and pricing policy
  • Categories and tags
  • Website, social networks, and phone numbers
  • Link to photo and logo
  • Description
  • Link to the organization's page on Yandex Maps
  • Information about opening hours

Capabilities​

  • It is mandatory to specify the coordinates and zoom of the area in which the search is performed
  • Ability to set the number of pages for data collection
  • Ability to specify the language of the results
  • Ability to use AntiGate to bypass captchas

Use Cases​

  • Collecting a list of organizations present in a given area
  • Obtaining organization contacts
  • Any other cases involving searching for organizations on maps

Queries​

Keywords must be specified as queries, exactly as if they were entered directly into the Yandex Maps search form, for example:

pizza

Output Results Examples​

A-Parser supports flexible result formatting thanks to the built-in Template Toolkit template engine, which allows it to output results in an arbitrary form, as well as in a structured one, such as CSV or JSON

Default Output​

Result format:

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

The result displays a list of organizations, their ratings, and addresses:

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

Output of All Contact Data​

Result format:

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

Result example:

Pies № 1 (4.9): Russia, Moscow, Bolshiye Kamenshchiki Street, 9, str. B, 256, , Food delivery, Pizzerias, Bakeries, free delivery, card payment, grocery delivery, food delivery, 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, Moscow, Taganskaya Street, 29, str. 1, 153, 900–1500 ₽, Hookah bars, Bars, pubs, Intellectual games, board games, summer veranda, card payment, business lunch, projector, Wi-Fi, sports broadcasts, , +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, Moscow, Bolshaya Dmitrovka Street, 7/5s1, 133, 1500–1700 ₽, Restaurants, Pizzerias, business lunch, Wi-Fi, coffee to go, takeaway, summer veranda, card payment, sports broadcasts, 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, Moscow, Vorontsovskaya Street, 6, str. 7, 68, 900–1200 ₽, Hookah bars, Bars, pubs, Anti-cafe, board games, disabled parking, card payment, craft beer, Online pre-order, Wi-Fi, sports broadcasts, 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 to a CSV Table​

Result format:

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

Result example:

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

Results Dump to JSON​

Common result format:

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

Initial text:

[

Final text:

]

Result example:

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

To make the "Prepend text" and "Append text" options available in the Task Editor, you need to activate "More options".

Possible Settings​

ParameterDefault valueDescription
Coordinates37.6572693,55.780844Search area coordinates, mandatory parameter — longitude, latitude, as in the URL (ll=), and not as when copying coordinates with a button on the map
Zoom11Zoom, mandatory parameter
Pages count5Number of pages
LanguageEnglishResult language selection
AntiGate presetdefaultPre-configured scraper preset Util::AntiGateUtil::AntiGate