Как спарсить Google Maps в CSV: телефоны, сайты, адреса и координаты 5 000+ организаций без кода
С помощью встроенного парсера
На выходе получается база для Excel или CRM: её можно отфильтровать по наличию сайта, рейтингу, отзывам и категориям, а затем использовать для поиска клиентов, партнёров или локального анализа рынка.
От поисковых запросов к готовой базе организаций
Вся настройка выполняется в веб-интерфейсе A-Parser: без сторонних скриптов, расширений браузера и Node.js-библиотек.
Вы задаёте поисковые фразы и границы города в OpenStreetMap, а A-Parser строит координатную сетку и собирает карточки по каждому сектору.
Какие данные Google Maps можно сохранить в CSV
Штатный парсер
В базовую выгрузку можно включить 10 колонок:
| Колонка | Поле Maps::Google | Что содержит |
|---|---|---|
| Поисковая фраза | query | Ключевое слово, по которому найдена карточка |
| Название | name | Название организации из карточки |
| Рейтинг | rating | Оценка по шкале от 1 до 5 |
| Отзывы | reviews | Количество отзывов на момент сбора |
| Адрес | address | Адрес организации |
| Телефон | phones | Контактный номер из карточки |
| Сайт | site | Ссылка на сайт или внешнюю страницу, указанную в карточке |
| Категории | categories | Основные и дополнительные категории организации |
| Координаты | coordinates | Широта и долгота (lat, lng) |
| Ссылка на карточку | link | URL Google Maps с CID; подходит для дедупликации |
Дополнительные поля парсера:
Парсер также умеет отдаватьtimestatus(статус работы: «Открыто» / «Закрыто»),tags(параметры доступности и доп. услуги),photo(ссылка на изображение карточки) иprice(ценовой диапазон).
Как настроить парсер Google Maps в A-Parser
Что понадобится
- A-Parser Pro или Enterprise.
- Пул резидентских прокси A-Parser Premium. Google ограничивает частые запросы с одного IP-адреса, поэтому для обхода города нужен пул прокси.
- Список целевых ключевых фраз.
Шаг 1. Выберите
Maps::Google1. Перейдите в Редактор заданий в веб-интерфейсе A-Parser.
2. В выпадающем списке парсеров выберите встроенный парсер
Maps::Google.
Шаг 2. Задайте поисковые фразы
В поле Запросы укажите пул из 5–10 целевых фраз по вашей нише.
Важное правило семантики:
Разные организации оптимизируют карточки под разные ключевики. В этом тесте запросавтосервисдал 866 строк итоговой выгрузки, аремонт автомобилей— 1 228. Если ограничиться одним общим словом, охват будет заметно меньше.
Пул запросов для автосферы, использованный в нашем прогоне:
Код:
ремонт автомобилей
ремонт авто
автомастерская
автосервис
СТО
автотехцентр
станция технического обслуживания
Шаг 3. Задайте базовые параметры парсера
В настройках парсера
1. Координаты — координаты центра поиска. Они нужны для поиска из одной точки: например, для небольшого населённого пункта или когда важна выдача вокруг конкретной точки на карте. При включённом Collect full region координаты можно не заполнять: парсер строит сетку по границам региона. Если значение уже есть в импортированном пресете, оно не меняет эту сетку.
2. Масштаб — масштаб карты. При поиске из одной точки установите
13. В режиме обхода региона масштаб задавать не нужно: парсер сам подбирает его для каждой точки.3. Страна — при необходимости укажите
Россия вместо Авто (на основе IP). В тестах по одной точке Санкт-Петербурга это поле почти не влияло на состав выдачи; более важны координаты и язык.4. Язык — для русскоязычного региона выберите
русский (Russian). При значении английский (English) часть названий и адресов может прийти транслитом, при этом выдача может быть смешанной — проверьте несколько первых строк результата.5. Макс. страниц — глубина пагинации по каждому узлу. В измерении на точке Санкт-Петербурга одна страница содержала 20 организаций:
3 страницы дали 60 карточек, 10 — 200. Для первого запуска используйте 3 страницы, затем при необходимости увеличьте глубину.Шаг 4. Настройте автоматический обход города (Collect full region)
Выдача Google Maps зависит от точки поиска. Для обхода всего города A-Parser строит сетку точек внутри границ выбранного региона.
Где искать опцию региона в интерфейсе:
Опция обхода региона находится не в общем списке настроек парсера, а в блоке парсера внутри Редактора заданий под заголовком Опции парсера:
- OpenStreetMap Type+ID: укажите точный идентификатор региона из OpenStreetMap. Для Санкт-Петербурга этоR421007(букваRозначает relation — административная граница города).
- Шаг в километрах: шаг координатной сетки. Установите3км.
- Режим OSM: выберитеКод местоположения.
Как это работает: После указания relation-кода A-Parser определяет границы региона, строит внутри этого полигона сетку из 131 опорной точки с шагом 3 км и опрашивает каждую точку по вашему списку ключей. Для каждой точки парсер автоматически подбирает масштаб карты.
Количество точек может быть меньше прикидки по описывающей рамке региона: парсер работает по реальной форме границы, а не по прямоугольнику вокруг неё.
Как узнать код любого другого города:
Откройте openstreetmap.org, найдите город и откройте его административную границу. В карточке объекта указан тип и номер, напримерRelation: Moscow (2555133). Для поля OpenStreetMap Type+ID используйте этот номер с буквойR:R2555133.
Номер relation также можно взять из адресной строки страницы видаopenstreetmap.org/relation/2555133, но это необязательно.
Шаг 5. Настройте Проксичекер
В настройках задания:
- Выберите рабочий список прокси в поле Проксичекер.
- Укажите Повторы запроса:
10. Google периодически возвращает временные блокировки или пустые ответы; при каждой повторной попытке парсер сменит прокси. - Установите 20–30 потоков.
Шаг 6. Настройте формат выгрузки в CSV
Писать скрипт не нужно: A-Parser сформирует одну строку CSV для каждой найденной карточки Google Maps. В шаблоне важно сохранить одинаковый порядок полей в шапке и строках результата.
Строки с организациями
1. В поле Формат результата вставьте шаблон:
Код:
[% FOREACH serp %]
[% tools.CSVline(
query,
name,
rating,
reviews,
address,
phones,
site,
categories,
coordinates,
link
) %]
[% END %]
Здесь
FOREACH serp перебирает найденные карточки, а tools.CSVline создаёт отдельную CSV-строку для каждой организации. Функция корректно обрабатывает значения с разделителями, кавычками и переносами строк, поэтому адрес или название не разобьются на несколько колонок.Шапка CSV
2. В поле Начальный текст вставьте:
Код:
Запрос,Название,Рейтинг,Отзывов,Адрес,Телефон,Сайт,Категории,Координаты,Ссылка
После
Ссылка должен быть перевод строки — иначе первая организация склеится с заголовком. Порядок названий в шапке должен совпадать с порядком полей в tools.CSVline.Кодировка, имя файла и запуск
3. В разделе Результаты, в блоке Опции, включите:
- Записать UTF-8 BOM:
Да(true). Эта опция добавляет сигнатуру\xEF\xBB\xBF, благодаря которой Microsoft Excel открывает кириллицу в UTF-8 без ручного импорта.
4. Выберите сохранение результатов в файл и в поле Имя файла задайте, например:
Код:
google_maps_leads_$datefile.format().csv
5. Нажмите Добавить задание или Запустить. После завершения задания скачайте CSV из Очереди заданий.
Как проверить выгрузку перед запуском на весь город
Перед региональным обходом запустите задачу на 1–2 запросах и проверьте первые строки CSV:
- заголовки и значения не склеились в одну колонку;
- телефон, адрес, координаты и ссылка на карточку попали в нужные поля;
- кириллица корректно открывается в Excel;
- в поле
Ссылкаесть CID карточки Google Maps; - страна и язык соответствуют целевому региону;
- пустые сайты, рейтинги и отзывы не всегда означают ошибку: эти поля могут отсутствовать в карточке Google Maps.
Для базы лидов удаляйте повторяющиеся значения в колонке
Ссылка: она содержит CID карточки Google Maps. Если анализируете, по какому запросу найдена компания, сохраняйте также колонку Запрос.Результаты тестового запуска: 5 102 строки по автосервисам Санкт-Петербурга
Тестовый запуск выполнен в A-Parser для региона
R421007 (Санкт-Петербург, 131 точка обхода) по 7 автомобильным запросам при Макс. страниц = 3:Как собирали данные
| Параметр | Значение |
|---|---|
| Регион | Санкт-Петербург (R421007) |
| Дата тестового прогона | 30 сентября 2026 года |
| Поисковые фразы | 7 автомобильных запросов |
| Точек сетки | 131 |
| Шаг сетки | 3 км |
Макс. страниц | 3 |
| Сгенерированных подзапросов | 917 (131 × 7) |
Счётчик Запросы заверш./всего | 924 (7 исходных фраз + 917) |
| Прокси | Резидентские A-Parser Premium |
| Версия A-Parser | v1.2.3671; NextGen v0.5.79 (linux) |
| Время выполнения | 5 минут 30 секунд |
| Сырых строк | 39 890 |
Радиусы соседних точек сетки перекрываются, поэтому одна и та же карточка может попасть в сырой результат несколько раз. Из 39 890 сырых строк сформирована итоговая выгрузка из 5 102 строк. В ней содержится 5 096 уникальных карточек по постоянному идентификатору (
cid в ссылке); 6 строк повторяют CID.Что получили
Анализ итогового файла
google_maps_leads_spb_avtoservice.csv (посмотреть в HTML):| Показатель | Результат |
|---|---|
| Строк в итоговой выгрузке | 5 102 |
| Телефоны | 4 663 из 5 102 (91,4%) |
| Адреса | 5 096 из 5 102 (99,9%) |
| Координаты | 5 102 из 5 102 (100,0%) |
| Категории | 5 041 из 5 102 (98,8%) |
| Рейтинг | 3 702 из 5 102 (72,6%) |
| Отзывы | 3 578 из 5 102 (70,1%) |
| Сайты / внешние страницы | 2 386 из 5 102 (46,8%) |
| Ссылка на карточку с CID | 5 102 из 5 102 (100,0%) |
О формате телефонных номеров:
Парсер сохраняет номера как последовательность цифр в локальном формате:88126799299или89811763796. Номера сохранены без скобок и дефисов, поэтому их удобно импортировать в CRM (Битрикс24, amoCRM) и использовать в сервисах дозвона.
Что показывают результаты
1. Телефон и адрес доступны чаще сайта. Google Maps подходит для первичной базы контактов, но отсутствие сайта в карточке нужно проверять вручную.
2. Несколько синонимов расширяют охват. В этом тесте одна фраза
автосервис дала заметно меньше строк, чем весь пул из семи запросов.3. CID нужен для финальной очистки. Перекрытие сетки создаёт повторы, которые следует удалить перед импортом в CRM.
Вклад каждого запроса в итоговую базу
Ниже — распределение строк итоговой выгрузки по полю
Запрос:| Поисковый запрос | Строк в итоговой выгрузке | Доля выгрузки |
|---|---|---|
ремонт автомобилей | 1 228 | 24,1% |
ремонт авто | 1 180 | 23,1% |
автомастерская | 1 087 | 21,3% |
автосервис | 866 | 17,0% |
СТО | 432 | 8,5% |
автотехцентр | 232 | 4,5% |
станция технического обслуживания | 77 | 1,5% |
Если бы мы запустили парсер только по слову
автосервис, итоговая выгрузка содержала бы 866 строк вместо 5 102. Комбинация синонимов увеличила объём выгрузки почти в 6 раз.Как использовать выгрузку после сбора
CSV из Google Maps можно использовать не только как список организаций, но и как основу для сегментации, проверки данных и подготовки персонализированных обращений.
| Задача | Поля для фильтрации | Что сделать дальше |
|---|---|---|
| Поиск компаний без указанного сайта | Сайт = пусто | Проверить карточку вручную и предложить сайт, страницу услуг или каталог |
| Приоритизация заметных компаний | Отзывы, Рейтинг | Отобрать карточки с нужным уровнем отзывов и оценки для персонального контакта |
| Аудит репутации | Рейтинг, Отзывы | Найти компании с низкой оценкой и достаточным числом отзывов для анализа причин |
| Географическая сегментация | Адрес, Координаты, Категории | Разделить базу по районам, типам бизнеса или зонам работы менеджеров |
| Подготовка к импорту в CRM | Название, Телефон, Сайт, Ссылка | Удалить дубли по CID, проверить контакты и загрузить базу в CRM |
Важно: пустое полеСайтозначает, что в карточке Google Maps нет указанной ссылки. Рейтинг и количество отзывов помогают приоритизировать проверку, но сами по себе не доказывают потребность компании в услуге.
Что делать, если результат выглядит неправильно
| Проблема | Причина | Решение |
|---|---|---|
| Названия компаний и улиц пришли на латинице | В параметре Язык оставлен английский (English) | Для русскоязычного региона укажите русский (Russian) |
| Обход региона создаёт слишком много точек | На крупном городе выбран слишком маленький Шаг в километрах | Для первого запуска используйте шаг 3 км; при необходимости затем уменьшайте его |
| Парсер охватил область шире, чем планировалось | В Строка местоположения OSM может выбрать не ту границу | Выберите Режим OSM = Код местоположения и укажите точный relation-код, например R421007 |
| Excel показывает «кракозябры» | Файл сохранён в UTF-8 без BOM | Включите Записать UTF-8 BOM: Да в блоке Опции |
| В итоговом файле есть повторяющиеся карточки | Радиусы соседних точек сетки перекрываются | Удалите повторы по колонке Ссылка (CID) в Excel или Template Toolkit |
| Сайт, рейтинг или отзывы пустые | Эти поля могут отсутствовать в карточке Google Maps | Сохраните пустое значение или отфильтруйте такие строки под вашу задачу |
Когда A-Parser удобнее собственного скрипта
Скрипт подойдёт, если нужна нестандартная обработка данных или интеграция с внутренней системой. Но для регулярного обхода городов придётся отдельно поддерживать сетку координат, прокси, повторы при сетевых ошибках, дедупликацию и экспорт.
A-Parser объединяет эти действия в одной задаче. Конфигурацию можно сохранить как пресет, подставить другой город и список запросов, а затем запускать повторно.
Готовый пресет для импорта в A-Parser
В Редакторе заданий в строке Пресет задания (Task preset) нажмите кнопку импорта справа от поля и выберите Импорт пресета (Import preset). Разверните спойлер и вставьте Base64-код в поле импорта.
Код:
eJx9Vd1uG0UUfpXVKJVatEQxP0LynWsSCCRxSVJukiiaesfOkN2Z7cysG2NZ
StoCF70Id0hIVJQnCGlDAyHmFWbfiG9m1/baFN945/x855z5zjnjAekxpbkU
pF4LiaH6WD9QTDOjSX1vQFJ/JnWi00fv056RmqkebzMSkpQqCM5tj2zSVNfr
n0nZjZ0pYh2axYaEA2L6KQNcIovikTPyCPK3OPRonDlb7UMy/H/Po7jiqrJF
rgk9OUxpl+kKYmHsTLNUyZP+1N+ojC0AeO/mEWsfM1VJ8t6iJB6jmFF8prDa
yiJQR6qEGpDvaZyA9u4Ea63t1Ubz8wDcp8GdA2iMlLFebu58HXPB7j7OmOqH
gaAJCwNFDRddfFmPsyc6DGgUISgO6ZEUDF/NDfza1LCudBXiLKWKuIAGAkIe
3yvSrG59isNM0anB4OhxzVInuzA0RLQeVWre/uiD2srKJ9AgOXcIGpP6gGjD
0nXxZeKbFDr0powcoO0+w+HBQUgKAvSaZwOmpbS2XI7kxLhDe2xXOs64H74x
BtIWSICh6+fyMMGQHsaMRvpwKcL1nP9yQfTde8tt3Zspscjpxntax0PBH/s7
CQlfxzQYW1PS3cGwE1Mq++N698iSlwlCZB77VYEh9Q6NNQuJRvFrFIVE8xb0
Bd2TqlWSDMakaMTxBuuxeOrm49/PeBxhFxsdgNZL4LtdWv+JMZxcr5oK8/hE
oYZiJULihfutzfGKkEhuyC7uHT3CrWOecANZN2UmcPGVkBwzlk742nJ8JVKx
SYqytjIznpyUCTdE9id7Yf/JT+0oPwvtLxDe2kv83tprexXaX+2V/TN/CuHW
vg7tSxzf5i/gMbKXof3RvgHyyiF/g+MNjs9huQ3tK4QALrQ/2wtgruxrJDhF
mGunGnnhjY8Kc/4CgPwMcW/sX/ZiX0ynqpGWdZI5XmfmZFbZlqLDu61yw8ee
mdjFY9sSTZmkMXNEu5h4kban89vQ5VQ4YcrZPLTpE7hejN9d4t+EL3aKoKni
2I+PXXkJGlvNWYZs0zh+uL0xX402Mm2JVaXmpsnPKXFU278dv/nTAPxegtiR
V/wOJm9cp/bFO532RcX9AkyjI/lpfubYzs+nVmigR3ev8zNoX6GrLytWh/ou
/x4JEDw/RTIXCbMC3XV+HhQObnTyH9xUIPzINT5wJUK8yZ/ZP1BqOV/5eWWp
PeG+e8XT2HfS8GDytzf5kxxgF77RDwqtg3nd8F+iAgUR
Готовые материалы и следующий шаг
Для первого запуска замените тестовые запросы на свою нишу и проверьте первые 20 строк выгрузки. Если колонки, язык и регион соответствуют задаче, увеличивайте число запросов и запускайте обход всего города.
← Все опубликованные руководства по парсингу
Последнее редактирование:
