Claude · сбор контактов в таблицу · сентябрь 2026
Собрать базу клиентов: таблица с контактами за 10 секунд
Базу с почтами и телефонами собирает открытая библиотека scrapegraphai. Ты даёшь список сайтов, она заходит на страницу контактов каждого и забирает данные в таблицу. Шесть сайтов у меня обработались за 10.3 секунды, счёт за это нулевой: всё считается на твоей машине. Командует ею Claude Code, помощник на компьютере: нет его - поставь по инструкции.
Заведи пустую папку под будущую таблицу и перетащи её на окно помощника. Напиши одной строкой: «поставь библиотеку pip install scrapegraphai, браузер playwright install chromium, а ещё Ollama с моделью gemma3:4b». В конце будет строка Successfully installed со словом scrapegraphai. Модель нужна обязательно, иначе помощник попросит ключ от платного сервиса.
Дальше даёшь ему список адресов и говоришь: «зайди на каждый сайт, найди страницу контактов, забери название компании, почту, телефон и город, сложи в файл baza.csv».
Собери список адресов сайтов тех компаний, которые тебе интересны, и дай их помощнику: он зайдёт на страницу контактов каждой и заберёт почту с телефоном. У меня шесть сайтов обработались за 10.3 секунды. Клетки с NA значат, что на той странице контактов не было, а не что инструмент сломался
Что получается на выходе
Четыре строки из шести собрались полностью: название, рабочая почта, телефон с кодом города, сам город. Две строки пустые, с пометкой NA. Так и должно быть: на тех двух сайтах контакты спрятаны за формой обратной связи, брать было нечего.
Эти NA тут важнее, чем заполненные строки. Инструмент не подставил правдоподобный адрес, чтобы таблица выглядела красиво. Он сказал «не нашёл». Для базы клиентов это решающее свойство: выдуманная почта обнаруживается только после рассылки, которая никуда не дошла.
Я проверил собранные адреса вручную, открыв те же страницы: все четыре стоят на сайтах компаний, ничего не выдумано.
Где брать список сайтов
Это главный вопрос, и ответ на него неприятный: волшебной кнопки «выгрузи мне все стоматологии Москвы с телефонами» не существует.
Крупные каталоги телефоны прячут. Я проверил восемь популярных справочников: в тексте страницы телефонов нет вовсе, они подгружаются после клика по кнопке «Показать номер». Инструмент видит ровно то же, что видишь ты до клика, то есть ничего.
Зато работает другой заход, и он даёт контакты лучшего качества:
| Откуда берёшь адреса | Что получаешь |
|---|---|
| Поиск по своему запросу, первые 3-5 страниц выдачи | компании, которые уже вкладываются в продвижение |
| Отраслевые рейтинги и списки участников | отобранные игроки рынка, а не случайные |
| Списки участников конференций | те, кто активен прямо сейчас |
| Свои закладки и заметки | те, кого ты уже присмотрел |
Таблица прокручивается вбок →
Логика простая: адреса сайтов собрать легко, они везде на виду. Тяжёлая работа это зайти на каждый сайт, найти раздел контактов и переписать почту с телефоном. Вот её ты и отдаёшь помощнику.
Что писать в запросе, чтобы пришла таблица, а не текст
Формулировку ты пишешь помощнику в то же окно, где ставил библиотеку:
Зайди на каждый сайт из списка, найди страницу контактов и забери оттуда
название компании, почту, телефон и город.
Верни JSON-объект с полями company, email, phone, city.
Только JSON, без пояснений. Если поля на странице нет, поставь NA,
ничего не придумывай.
Три детали решают всё. Первая: поля названы поимённо, тогда они станут колонками. Вторая: «только JSON, без пояснений» убирает вежливое вступление вроде «вот что мне удалось найти», иначе оно попадёт в таблицу вместо данных. Третья, самая важная: строка про NA. Без неё модель заполняет пробелы правдоподобными выдумками.
Свою нишу подставляешь в ту же рамку: вместо агентств пишешь стоматологии, свадебных фотографов, студии ремонта, и дальше те поля, которые нужны тебе.
Сколько это заняло по шагам
Все числа с моего прогона 15 сентября, снятые секундомером внутри скрипта:
| Что происходит | Сколько заняло |
|---|---|
| Ставится библиотека | 42 секунды |
| Ставится браузер к ней | 25 секунд |
| Шесть сайтов, сбор контактов | 10.3 секунды |
| Самый быстрый сайт | 2.1 секунды |
| Самый медленный | 34.9 секунды |
Таблица прокручивается вбок →
Установка разовая. Дальше каждый новый список это секунды, а не вечер работы.
Разброс от двух до тридцати пяти секунд объясняется просто: где страница контактов лёгкая и данные в тексте, там пара секунд. Где тяжёлая вёрстка и данные разбросаны по блокам, там модель дольше разбирается.
Какая модель это делает и почему за неё не платят
У библиотеки есть выбор, чьими мозгами разбирать страницу. Можно подключить платный сервис, тогда каждая обработанная страница стоит денег. А можно держать модель у себя на компьютере, и счётчик не тикает вообще.
Ту самую Ollama ты уже поставил первой строкой. Проверить, что модель на месте, можно просьбой «покажи список установленных моделей»: в ответе должна быть строка gemma3:4b и размер около трёх гигабайт. Пустой список значит, что скачивание не дошло, повтори просьбу.
Второй признак, что данные никуда не уходят: помощник не спрашивает ключ доступа и не просит привязать карту. Страница разбирается на твоей машине.
Расплата честная: локальная модель медленнее облачной и хуже держит очень длинные страницы. На страницах контактов, где текста немного, разницы не заметишь.
А если у тебя другой случай
Нужны не контакты, а любые данные со страницы. Цены конкурентов, список товаров, вакансии. Та же библиотека, меняется только фраза запроса. Подробный разбор лежит в статье про скрапинг сайта без кода.
Сайтов не шесть, а двести. Скажи помощнику, что список длинный и лежит в файле. Он прочитает файл и пройдёт по строкам сам, а ты получишь одну общую таблицу.
Нужно, чтобы база пополнялась без тебя. Попроси сохранить сбор как повторяемую задачу и назначить время. Утром в таблице лежат свежие строки.
Контакты спрятаны за формой обратной связи. Тут инструмент бессилен, и это не лечится настройками. Он читает то, что видит любой посетитель.
Если помощника на компьютере ещё нет, начни с установки Claude Code. А чтобы понять, что вообще умеют такие наборы умений, посмотри разбор скиллов для Claude.
Что ломается у всех и что с этим делать
Красная ошибка со словами Executable doesn't exist. Полностью так:
RuntimeError: Failed to scrape after 1 attempts: BrowserType.launch:
Executable doesn't exist at .../chrome-headless-shell
Looks like Playwright was just installed or updated.
Please run the following command to download new browsers:
playwright install
Это не поломка, а недостающая деталь: библиотека открывает страницы браузером, а браузер ставится отдельно. Скажи помощнику «поставь браузер командой playwright install chromium». У меня скачалось 94 мегабайта за 25 секунд.
Ответ пришёл пустой, в скобках ничего. Экранный текст называет причину прямо:
None of the requested terms ['email', 'name', 'phone'] appear in the parsed content
Значит на той странице запрошенных полей нет. Проверь глазами: открой ту же ссылку и поищи почту сам. Не нашёл ты, не найдёт и инструмент.
Сбор висит минутами. У меня два сбора, запущенные одновременно, не закончились за десять и девятнадцать минут, а тот же сбор в одиночку занял секунды. Локальная модель обслуживает один запрос за раз, второй молча ждёт. Запускай по одному.
В колонке компании стоит NA у всех строк. Ты дал адреса главных страниц вместо страниц контактов. Добавь в запрос фразу «найди страницу контактов», тогда помощник пройдёт на неё сам.
Все четыре случая я поймал на своём прогоне, экранный текст приведён дословно:
| Что видишь | Что это значит | Что сделать |
|---|---|---|
Executable doesn't exist | браузер не поставлен | playwright install chromium |
None of the requested terms | на странице нет нужных полей | взять страницу контактов, а не главную |
| сбор идёт минутами | запущено несколько сборов разом | оставить один |
| у всех строк NA | даны главные страницы | добавить «найди страницу контактов» |
Таблица прокручивается вбок →
Забери с собой: запрос под свою нишу
Вставь это в Claude, заменив выделенное на своё:
Вот список сайтов: <адреса через запятую>
Зайди на каждый, найди страницу контактов и забери название компании,
почту, телефон и город. Сложи в файл baza.csv, по компании в строке.
Если какого-то поля на странице нет, поставь NA, ничего не придумывай.
Последняя строка здесь самая важная. Без неё модель заполнит пробелы правдоподобными адресами, и ты узнаешь об этом после первой рассылки в никуда.
Таблица открылась одной колонкой вместо четырёх
Данные собраны правильно, а выглядят кашей. Причина в том, что русский Excel ждёт точку с запятой между значениями, а файл приходит с запятыми.
В Google Таблицах лечится при открытии: «Файл», «Импорт», разделитель «запятая». В Excel на Windows: вкладка «Данные», «Текст по столбцам», выбрать «с разделителями» и поставить галочку на запятой. В Numbers на Mac файл открывается правильно сам.
Проверка, что всё встало: в первой строке четыре отдельные ячейки со словами company, email, phone, city, а не одна длинная строка с запятыми внутри.
Источники
- Репозиторий ScrapeGraphAI: 31 001 звезда, лицензия MIT, версия библиотеки 2.2.4 на 15.09.2026
- Собственный прогон 15.09.2026: шесть сайтов за 10.3 секунды, четыре компании с контактами, две строки NA, все собранные адреса сверены с живыми страницами
Памятка: что сказать помощнику и что проверить
Семь строк, которых хватает на весь путь от пустой папки до готовой таблицы
Сохрани себе
- поставить всё сразу: «поставь
pip install scrapegraphai,playwright install chromiumи Ollama с моделью gemma3:4b» - убедиться, что установка прошла: строка
Successfully installedсо словомscrapegraphai - проверить модель: «покажи список установленных моделей», искать
gemma3:4b - собрать список адресов самому: из выдачи по своему запросу, из рейтингов, из списков участников
- в запросе назвать поля поимённо и добавить «найди страницу контактов»
- в запросе оставить строку про NA, чтобы пустые места не заполнялись выдумкой
- при открытии таблицы выбрать разделитель «запятая», в шапке четыре отдельные ячейки
Контакты собраны, таблица открывается
Почему у одних база работает, а у других лежит мёртвым грузом
Памятка выше закрывает вопрос «как собрать контакты». Она не закрывает вопрос, что с ними делать. Список из тысячи почт сам по себе не приносит ни одного клиента: важно, по какому признаку ты отобрал эти компании, что напишешь первым сообщением и как отличишь тех, кому действительно нужно то, что ты делаешь
Я через это проходил и собрал цепочку целиком: как сузить нишу до такой, где твоё предложение читается как адресное, как проверить базу на живость до первого касания и как выстроить последовательность, чтобы разговор начинался не с продажи
На ИИ-Лагере показываю эту цепочку на своих экранах и разбираю ниши участников: где база соберётся легко, а где вместо неё нужен другой ход
Частые вопросы
Это законно?
Инструмент читает ровно то, что открыто любому посетителю сайта, паролей не обходит. Рабочая почта компании, которую она сама опубликовала, и личный телефон человека это разные вещи, и относиться к ним надо по-разному
Сколько стоит собрать тысячу компаний?
Нисколько, если работаешь на локальной модели: она стоит у тебя на компьютере. Платить начинаешь только когда сознательно подключаешь облачный сервис
Можно ли просто выгрузить все компании из справочника?
Нет, и это честный ответ. Крупные каталоги телефоны в тексте страницы не показывают, они подгружаются после клика. Список адресов собираешь сам, а помощник обходит сайты и вытаскивает контакты
Почему в колонках стоит NA?
Так инструмент помечает поле, которого на странице не было. Это сделано специально: лучше честная пустая клетка, чем выдуманный адрес
Можно ли собирать каждый день автоматически?
Да. Попроси помощника сохранить сбор как повторяемую задачу и назначить время. Дальше таблица пополняется сама
Я Иван Сергеев, собираю продукты и маркетинг на ИИ и показываю это на своём экране: что сработало, что развалилось и сколько времени стоило