← бесплатные уроки вход для учеников
бесплатный урок

Как спарсить данные с сайта в Excel без программиста

Штатная кнопка в Excel, формулы в Google Таблицах и парсер, который нейросеть напишет по твоему описанию. И честно — где каждый способ ломается.

Смотри. Тебе нужен прайс конкурента — восемьсот позиций. Или каталог поставщика, чтобы сравнить цены. Или список компаний с отраслевого портала.

Открываешь страницу, выделяешь, копируешь, вставляешь в Excel — и получаешь кашу: колонки съехали, цены слиплись с валютой, а это была первая страница из сорока. К третьей странице ты уже прикидываешь, где найти программиста и сколько он попросит.

Не надо программиста. Есть три способа, и два из них ты сделаешь за пять минут прямо сейчас. Третий чуть длиннее, но берёт почти любой сайт. Разберём все три и честно про каждый: где он работает, а где разваливается.

Три способа спарсить сайт — и когда какой

СпособЧто берётСколько времениГде ломается
«Из Интернета» в Excelготовые таблицы со страницы5 минут, без кодаданные не в теге таблицы, рисуются скриптами
IMPORTHTML / IMPORTXML в Google Таблицахтаблицы, списки и любой кусок кода10 минут, одна формулато же самое плюс закрытые разделы
Свой парсер по описанию словамивсё, что ты видишь в браузере10–30 минут вместе с нейросетьюкапча, авторизация — но чинится

Правило простое: начинай сверху. Если задача решается кнопкой — решай кнопкой, не выпендривайся. К третьему способу переходи, когда первые два вернули пустоту.

Способ 1: кнопка «Из Интернета» в Excel

Она есть в Excel давно, и половина людей о ней не знает.

Вкладка «Данные»«Из Интернета». Вставляешь адрес страницы, ждёшь пару секунд — Excel показывает список всех таблиц, которые нашёл на странице, с превью. Тыкаешь нужную, жмёшь «Загрузить». Всё, данные на листе.

Приятный бонус: связь со страницей сохраняется. Завтра цены поменялись — жмёшь «Обновить всё», и таблица перезапрашивает сайт сама. Для отслеживания прайса раз в неделю этого хватает с головой.

Что учесть. На маке эта кнопка бывает урезана или её нет вовсе — проверь у себя, версии сильно разные. И главное ограничение: Excel ищет именно таблицы. Если на странице карточки товаров, плитка или список — в окне выбора будет пусто, и это не твоя ошибка.

Способ 2: IMPORTHTML и IMPORTXML в Google Таблицах

Тот же фокус, но гибче и прямо в ячейке.

=IMPORTHTML("https://сайт.ру/страница"; "table"; 1)

Три аргумента: адрес, что берём — "table" или "list", и номер по счёту. Первая таблица на странице — единица, вторая — двойка. Не угадал с номером — просто перебери, это секунда.

Когда данные не таблица и не список, идёт тяжёлая артиллерия:

=IMPORTXML("https://сайт.ру/страница"; "//div[@class='price']")

Вторым аргументом — адрес нужного куска внутри кода страницы. Выглядит страшно, но писать его руками не надо: скопируй кусок кода страницы, отдай нейросети и скажи, что именно хочешь достать — она соберёт выражение за тебя. Это, кстати, ровно та работа, которую нейросеть для Excel делает лучше всего: перевести «мне нужны цены вот отсюда» в формулу.

Ещё мелочь, на которой спотыкаются: в русской локали аргументы разделяются точкой с запятой, в английской — запятой. Скопировал формулу из интернета, а она ругается — начни с этого.

Плюс способа — таблица живая, Google сам перезапрашивает страницу. Минус тот же самый: сайт переверстали, и вместо цен у тебя #Н/Д по всему столбцу.

Способ 3: описываешь задачу словами — код пишет нейросеть

Вот здесь начинается интересное, и именно ради этого раздела написана статья.

Ещё пару лет назад «написать парсер» означало найти человека, объяснить ему задачу, заплатить и ждать. Сейчас ты описываешь задачу текстом — и получаешь рабочий скрипт минут за десять. Не «примерно похожий», а работающий: он сходит на сайт, соберёт данные, положит в файл.

Формулировать надо конкретно. Плохой запрос — «спарси мне этот сайт». Хороший выглядит так:

Нужен скрипт: собрать с сайта https://пример.ру/catalog список товаров в таблицу. По каждому товару: название, цена, наличие, ссылка на карточку. В каталоге 40 страниц, переход по кнопке «Дальше». Результат — CSV с заголовками, кодировка UTF-8, чтобы открылся в Excel. Между запросами пауза 1–2 секунды. Писать в файл по ходу, а не в самом конце. Если страница не открылась — записать её адрес отдельно и идти дальше.

Разберу, зачем каждая строка, — это и есть весь навык.

Адрес. Не «сайт такой-то», а конкретная страница, с которой начинать. Лучше сразу дай пример карточки товара.

Поля. Заранее реши, какие столбцы хочешь в таблице. Не решишь — получишь гору текста, из которой всё равно придётся выковыривать нужное.

Пагинация. Скажи прямо, сколько страниц и как они листаются: номерами, кнопкой «Показать ещё» или бесконечной прокруткой. Это единственное место, где парсеры чаще всего молча собирают одну страницу вместо сорока.

Формат результата. CSV открывается в Excel, но в русской локали он иногда сваливает всё в один столбец — Excel ждёт точку с запятой, а скрипт пишет запятые. Два лечения: открывать через «Данные» → «Из текста/CSV» и там выбрать разделитель, либо сразу попросить .xlsx.

Пауза. Одна-две секунды между запросами. Без неё скрипт долбит чужой сервер в полную силу, и его либо забанят, либо ты положишь сайт. Об этом ниже.

Запись по ходу. Чтобы на трёхсотой странице обрыв не съел всё собранное.

Дальше остаётся запустить. Если сама механика — где писать этот текст, чем запускать скрипт, что делать с ошибками — для тебя пока тёмный лес, посмотри разбор про нейросеть, которая пишет код: там как раз с нуля.

Как проверить, что парсер не врёт

Скрипт отработал, файл появился. Не радуйся раньше времени — проверь. Это та часть работы, которую нейросеть за тебя не сделает.

Сверь пять строк глазами. Открой таблицу, возьми пять случайных строк и найди эти товары на сайте. Цены совпали? Названия не съехали на строку?

Посчитай. Сорок страниц по двадцать четыре товара — жди примерно тысячу строк. Получил двадцать четыре — пагинация не сработала, собралась одна страница. Получил три тысячи — товары задвоились, скрипт ходит по кругу.

Посмотри на пустые столбцы. Названия есть, цены пустые — верный признак, что цену сайт подгружает скриптом отдельно. Скажи об этом нейросети прямым текстом, она поменяет подход.

Не сошлось — не переписывай сам. Опиши, что получил и что ожидал: «собрал 24 строки вместо 960, похоже, берёт только первую страницу». Этого достаточно, чтобы получить исправленную версию.

Где всё ломается

Четыре стены, в которые упираются все. Лучше узнать о них сейчас.

Сайт рисует данные скриптами. Самая частая история. Проверка на тридцать секунд: открой исходный код страницы (Ctrl+U) и поищи в нём цену, которую видишь глазами. Не нашлась — формулами её не взять никогда. Зато часто сайт сам дёргает свои данные отдельным запросом и получает их аккуратным списком — забрать их оттуда даже проще, чем разбирать вёрстку. Нейросеть умеет такое искать, если попросить.

Капча. Выскочила — значит, сайт считает тебя роботом и не рад. Сбавь темп, увеличь паузы. Сервисы разгадывания капчи существуют, но это уже обход защиты, а не сбор открытых данных, и ответственность там другая.

Пагинация. Разбирали выше. Смотри на адресную строку: появился ?page=2 — задача на одну строчку. Кнопка «Показать ещё» или бесконечная лента — нужен настоящий браузер, который прокрутит и нажмёт. Дольше, но решаемо.

Лимиты частоты. Сайт отвечает «слишком много запросов» или перестаёт отвечать вообще. Не сотня потоков, а один и с паузой. Собирать час вместо трёх минут — нормальная цена за то, чтобы вообще собрать.

Что парсить не надо

Раз уж показываю, как собирать данные, скажу и про границы. Коротко и по делу.

Данные людей — не бери. Имена, телефоны, почты, адреса. То, что они лежат открыто на сайте объявлений, не делает их твоими: это персональные данные, и собирать их в базу для обзвона — совсем другая история, чем сравнить цены на дрели.

Загляни в пользовательское соглашение сайта. У многих автоматический сбор запрещён прямо в тексте — маркетплейсы, агрегаторы, соцсети. Это две минуты чтения, и они избавляют от неприятных разговоров. Заодно посмотри /robots.txt — это не закон, но прямая просьба владельца, чего не трогать.

Не долби чужой сервер. Сотни запросов в секунду — это уже нагрузка, от которой у людей падает сайт. Пауза между запросами — не формальность, а элементарная вежливость.

Я не юрист, и в этом абзаце нет ничего похожего на юридическую консультацию. Если собираешь много, регулярно и ради денег — потрать час на консультацию с человеком, который в этом разбирается.

Простое правило на каждый день: публичные цены и характеристики для своего анализа — нормально. База контактов для холодной рассылки — уже нет.

Начни с малого. Возьми одну страницу, где есть нужная таблица, и вытащи её через «Из Интернета» — пять минут, и первый результат уже в Excel. Не получилось, страница оказалась сложной — вот тогда описывай задачу словами и собирай себе парсер. Кстати, если данные нужны не с сайта, а из Телеграма, там своя механика: выгрузка постов канала в Excel.

Погнали, попробуй прямо сейчас.

Частые вопросы
Как спарсить данные с сайта в Excel?
Если на странице обычная таблица — открой вкладку «Данные», выбери «Из Интернета», вставь адрес страницы. Excel сам покажет список таблиц, которые он на ней нашёл, ты отмечаешь нужную и жмёшь «Загрузить». Данные лягут листом, а связь с сайтом останется: кнопка «Обновить всё» перезапросит страницу заново. Способ бесплатный и без единой строчки кода, но работает только там, где таблица — настоящая таблица в коде страницы, а не картинка и не блоки, нарисованные вёрсткой.
Как спарсить данные с сайта в гугл таблицу?
Формулой прямо в ячейке. `=IMPORTHTML("адрес страницы"; "table"; 1)` затянет первую таблицу со страницы, `"list"` вместо `"table"` — маркированный или нумерованный список. Если нужен кусок, который не таблица и не список, берёшь `IMPORTXML` и указываешь, где именно он лежит в коде страницы. Таблица получается живая: Google сам ходит на сайт и обновляет данные. Обратная сторона — сайт поменяет вёрстку, и вместо цен у тебя будет ошибка.
Можно ли спарсить сайт без программиста?
Да, и уже двумя разными путями. Первый — готовые инструменты без кода: «Из Интернета» в Excel и формулы `IMPORT*` в Google Таблицах, пять минут работы и никакого кода. Второй появился недавно: ты описываешь задачу словами — какой сайт, какие поля, куда сохранить, — и нейросеть пишет парсер за тебя. Программист не нужен ни там, ни там. Нужно только уметь внятно объяснить, что ты хочешь получить на выходе.
Почему таблица с сайта не подтягивается и приходит пустой?
Скорее всего, сайт рисует данные скриптами уже в браузере. Excel и Google Таблицы скрипты не выполняют: они скачивают исходный код страницы, а в нём на месте цен пусто. Проверить просто — открой исходный код страницы (Ctrl+U) и поищи в нём любую цену, которую видишь глазами. Не нашлась — значит, данные подгружаются отдельно, и формулой их не взять. Тут помогает только парсер, который либо запрашивает данные там же, где их берёт сам сайт, либо открывает страницу в настоящем браузере.
Законно ли парсить сайты?
Сбор общедоступных цен и характеристик для своего анализа — обычная практика. Проблемы начинаются в трёх местах. Персональные данные: имена, телефоны, почты — это данные людей, и то, что они лежат открыто, не делает их твоими. Пользовательское соглашение сайта: у многих автоматический сбор запрещён прямо в тексте, открой и прочитай. И нагрузка: сотни запросов в секунду роняют чужой сервер, это уже не сбор данных. Если история про большие объёмы и деньги — спроси юриста, а не статью в интернете.
Как спарсить сайт, где данные на нескольких страницах?
Посмотри в адресную строку, когда переходишь на вторую страницу. Если в адресе появилось что-то вроде `?page=2` — считай, повезло: страницы перебираются по номеру, и это одна строчка в скрипте. Хуже, когда список догружается кнопкой «Показать ещё» или сам по мере прокрутки — тогда парсеру нужен настоящий браузер, который прокрутит и нажмёт. В любом случае скажи об этом нейросети сразу, одной фразой: «в каталоге 40 страниц, переход по кнопке "Дальше"».
Уже учитесь на курсе?
войдите, чтобы открыть все уроки