Искал компании без сайта — в итоге написал два расширения, для Яндекс Карт и 2ГИС
Привет, Пикабу! Я — разработчик, делаю сайты, и MapsGrabs мой проект. Это два расширения для Chrome: одно для Яндекс Карт, второе для 2ГИС. Открываешь карту в браузере, вводишь запрос — расширение собирает сведения об организациях из открытой вкладки и складывает их в XLSX, который формируется прямо на компьютере. Сразу скажу честно: лидов, клиентов и готовой базы на обзвон тут не обещаю — ни я, ни сайт. Просто расскажу, зачем я это сделал и как оно устроено.
Всё началось с простой задачи: найти компании, которым нужен сайт. Не «плохой сайт», а отсутствующий. Таких хорошо видно на картах: организация есть — название, адрес, телефон, — а сайта в карточке нет.
Только поиск выглядел уныло. Вводишь запрос, идёшь по списку, открываешь карточку за карточкой и переписываешь в таблицу название, адрес, телефон. Следующая, ещё одна, ещё. Взгляд плывёт, теряешь, где остановился и кого уже записал. Долго, скучно, и в каждом ручном переносе прячется ошибка: то строка пропущена, то ячейка не та. В какой-то момент стало очевидно: это должна делать машина.
Так появилась первая версия расширения — для Яндекс Карт. Открываешь карту, вводишь запрос, а расширение подталкивает страницу подгружать следующие порции выдачи и складывает записи в файл. Потом захотелось то же самое для 2ГИС, и тут началось интересное: задача та же, а механика карт другая, выдачу приходится «докручивать» иначе. Поэтому вместо одного универсального парсера получилось два расширения — под каждую карту своё.
Принцип, который я для себя вывел: DOM — руль, JSON — источник. Расширение не вычитывает поля из текста карточек на экране. Оно слушает JSON-ответы, которые вкладка карты и так получает при поиске: там лежат названия, адреса, телефоны, сайты, рейтинги. А DOM нужен как руль — чуть прокрутить список, дождаться ответа, прокрутить ещё, чтобы карта отдала следующую порцию. От вёрстки такой подход зависит меньше, но хрупкость никуда не девается: карты меняют ответы и элементы управления, поэтому код приходится обновлять.
Сбор идёт проходами: сначала организации, потом — уже по собранным карточкам — отзывы и медиа. Данные копятся локально в расширении, XLSX собирается здесь же, на компьютере.
Демонстрационный экран со вкладками организаций, отзывов и медиа: счётчики на кадре не являются типичным результатом
В одном старом файле из истории разработки лежало 47 организаций, и у двух из них поле «Сайт» оказалось пустым. Две пустые ячейки — и меня осенило: сколько вообще компаний живёт без сайта? Это же ровно те, кого я ищу: собираешь выдачу по нише и смотришь, у кого сайта нет. Оговорюсь сразу: это один файл и один момент, а не статистика. Какой процент бизнеса реально сидит без сайта, я не знаю и не измерял. Но как отправная точка идеи — сработало.
Теперь о границах — они важные
Отзывы в выгрузку попадают в маскированном виде: короткое превью без полного текста, автор вроде «И*** П***», оценка и месяц. Полный текст отзыва и имя автора я не сохраняю. С медиа ещё строже: сами фото и видео не копируются и не экспортируются, в файл попадает только их количество по типу на организацию. Никаких URL картинок и роликов в выгрузке нет. Копировать чужие отзывы и медиа я в инструмент сознательно не закладывал — это и некрасиво, и против правил источников.
И ещё одна деталь: перед первым запуском расширение попросит принять условия. Данные публичные и работать с ними нужно аккуратно, капчи и блокировки расширение не обходит и обходить их нельзя, рекламные обзвоны и рассылки без согласия адресата — тоже нельзя. Пока не подтвердишь и сервер не пришлёт «квитанцию» о согласии, сбор не стартует. Может, лишний клик — зато сразу видно, на что ты соглашаешься. Это не разрешение на любой сценарий, а фиксация границ: ответственность за использование выгрузки остаётся на тебе.
Что умеет и чего не умеет сам сбор
Расширение собирает организации по твоему запросу: телефоны, сайты, соцсети, адреса, рейтинги — эти колонки есть в выгрузке. Но что реально заполнится, зависит от того, что источник отдаст в конкретном запуске. Выгрузка — заготовка для проверки и чистки, а не готовая база клиентов. «Соберёт всех» я не обещаю: таких измерений не делал. И повторю: встроенной рассылки, обзвона и интеграций с CRM в расширении нет. Оно снимает ручной перенос карточек в таблицу, но не решает за человека, как использовать выгрузку и с кем работать.
Отдельно про приватность: карточки, поисковый запрос и содержимое выгрузки на сервер не передаются. На сервере оседает только лицензионный ключ и служебная информация — версия расширения и диджесты принятых документов. Всё остальное живёт в твоём браузере.
Если задача тебе знакома — на mapsgrabs.ru можно проверить свой запрос: первые 50 организаций выгружаются бесплатно, без банковской карты и без личного кабинета. Один ключ действует для обоих расширений.
И вопросы тем, кто реально работает с такими таблицами: каких колонок вам не хватает в выгрузке? В каком формате удобнее было бы импортировать — или XLSX и так ок? На каких запросах сбор ведёт себя хуже всего? По этим ответам я и исправлю следующие версии.
DOOM в 2Гис...
307 мегабайт за приложение с простыми картами, мож реально туда хотя бы DOOM встраивать или Халву первую пока ждешь обнову карты еще на 100 мб..
...
2gis для кого?
Стало мне очень интересно, а нахуя зачем мне в навигаторе трехмерная детализация?
Карта занимает полгига. Чтобы что?
И ещё полгига данных пользователя. Это что такое? Что там хранится?
Гигабайт занимает чёртов атлас!Блять Блин, мне там надо пеший маршрут построить, чтобы из А в Б на велосе доехать, тоже самое на машине или найти подходящий автобус!
Вот, кстати, про автобусы. Какого хера мне не показывают номер автобуса, который мне подходит, но сука далеко от меня?! Газель вонючая хз приедет вообще или нет, но она в выдаче всегда, а вот автобус с ГЛОНАСС, который приедет не скоро, но гарантированно, из результатов исключается....
Вы чего хотите там у себя? Для кого продукт? Дайте выбор хотя бы тогда, ставить мне всю эту "красоту" или нет. Lite версию выкатите что ли... Редиски(
Великость и маленькость: тест на знание России
Наша страна широка, высока и глубока. Это точно знают в 2ГИС, потому что мы всё измерили и подсчитали — и создали карту российских рекордов, географических и не только. Проверьте, что знаете о них вы.
Здесь рекордное все — и набережная, и Дом культуры, и даже улица Центральная, уверены, здесь самая рекордная.
Площадь Республики Саха (Якутии) — 3 миллиона км². На ней поместились бы шесть Франций или Испаний. А вот самый маленький субъект РФ — Ингушетия — уместился на 3,1 тыс. км². То есть, площадь двух республик различается примерно в тысячу раз.
5 700 рублей стоит койка в высокогорном приюте «Космос Эльбрус Липрус Лагерь» в Кабардино-Балкарии. Здесь есть туалет, душ, отопление, вай-фай и шведский стол. Всё это находится на высоте 3912 метров над уровнем моря, выше в России или Европе точно ничего нет. Здесь альпинисты акклиматизируются перед восхождением на Эльбрус.
Что касается самого высокого отеля в традиционном смысле слова, то это Say Wow на 68 этаже башни «Город столиц» в Москва-Сити — на высоте 275 метров. В отеле есть апартаменты и номера с окнами в пол (от 3400 рублей) и кровати-капсулы (от 1190 рублей).
Чаще на карте России встречается улица Центральная (22543 раза). Дело в том, что так часто называют главные улицы в небольших сёлах и деревнях. Следующие по популярности — Молодёжная (16181), Школьная (13958), Лесная (13817), Садовая (12857), Новая (11836) и Советская (11545).
Родина-мать в Волгограде — 85 метров. Это самая высокая статуя в России, но не самый высокий памятник. Самый высокий памятник же — обелиск Победы, возведённый в 1990-х на Поклонной горе по проекту Зураба Церетели: 141,8 метра.
Самый западный памятник России стоит на набережной самого западного города страны — Балтийска. И уникален не только местоположением, но и тем, что это — парадный конный памятник женщине. Дело в том, что при Елизавете Петровне Кёнигсберг, будущий Калининград, несколько лет (с 1758 по 1762 год) был в Российской империи.
Байкал — самое глубокое озеро не только России, но и планеты. Средняя глубина — 744,4 метра, 1 642 метров — максимальная. То есть, Байкал мог бы скрыть пять Эйфелевых башен (330 метров), поставленных одна на другую.
И это далеко не все рекорды, которые мы обнаружили в России, — на карте рекордов их ещё десятки!
2Гис, что с тобой не так?
Я прямо сейчас, 19.08.26 в 23-59 нахожусь в Санкт- Петербурге. Зашла на 2Гис глянуть, что есть рядом с отелем для посмотреть утром. И вижу - лето в Москве. На карте Питера. Серьезно??? Какое отношение домик Петра Первого имеет к лету в Москве? И остальные теги?? Вы лишаете меня и других туристов права увидеть историю. Если чел приехал в Питер, то он приехал именно в Питер. А в Москву он и без вас поедет, если захочет. Москва и без ваших обманных тегов прекрасна, но вы своим непонятным действом убиваете доверие лично к вам, как к проге.
Для тех, кто не понял. Интересные туристические места (тем более домик Петра Первого) не отмечены изначально как музей и подобное, а отмечены именно точкой "лето в Москве".












