Чт. Май 2nd, 2024

Сегодня поделюсь с Вами очень полезной информацией, которая может быть полезна при наполнении веб сайта и сборе данных. Мы разберемся как спарсить (собрать) данные с веб сайта в нужный столбец excel.

Пошаговая инструкция о том, как собрать данные с сайта в эксель

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

=IMPORTXML(A2;»запрос»)

=IMPORTXML(A2;»//h2″)

Нужно собрать title или description — пишем соответствующий запрос =IMPORTXML(A3;»//title») и т.д.

Далее публикую данные с сайта https://awwwake.ru/journal/kak-parsit-v-google-tablicy

Пример использования IMPORTXML. Можно спарсить любые данные.

В данном случае, нашей целью является тег div с определенным классом.

Итак, допустим, у нас задача: спарсить маршрут для маршрутки в таблицу с сайта 2 гис (это просто пример, у вас, конечно, задача своя). Т.е. в одной ячейке у нас ссылка, а в другую надо спарсить содержимое этой ссылки в конкретном месте страницы

Итак, мы переходим по данной ссылке, правой кнопкой нажимаем нужную нам область «посмотреть код элемента» — в каждом браузере по-разному называется — в опере так.

  • Находим нужный элемент — у меня тег div class=»_3hmsj»

Выбираем правой кнопкой — copy — copy Xpath

Вставляем скопированную конструкцию в дополнительную ячейку эксель и вместо звездочки пишем «div»

Для ячейки с маршрутом следования вставляем формулу =IMPORTXML(A3;B3). Где A3 — ссылка на нужную страницу, B3 — это точное указание места на странице, которую нужно спарсить.

Вот и все! Данные, пусть в неопрятном виде, но загрузились в таблицу. Формулу можно скопировать вниз на остальные ячейки.

IMPORTHTML

Функция импортирует данные со страницы, если они находятся в таблице или списке. Принимает три аргумента:

  1. Ссылку (с указанием протокола, например, https).
  2. Запрос (только два варианта — «table» для таблиц и «list» для списков).
  3. Индекс (порядковый номер элемента).

Например: =IMPORTHTML («https://moscowclinic.ru/price/diagnostika/mrt/golova»;»table»;1)

В данном случае прайс-лист на странице оформлен с помощью тега «table» — это видно, если посмотреть исходный код. Поэтому все подтягивается нормально.

А вот на соседней странице этого же сайта, где общий прайс-лист, для верстки использовали тег «div». И IMPORTHTML с параметром «table» уже не справляется. А перебор «list» с разным индексом только вытягивает разные элементы меню.

IMPORTFEED

Импортирует ленту RSS или Atom в гугл-таблицу. Эта функция более интересная, особенно для тех, кто занимается контент-маркетингом.

Параметры:

  1. Ссылка на фид.
  2. Запрос — указываем, какие именно данные нужно загрузить.

(Например, можно прописать «items url» для выгрузки списка ссылок на новые статьи. Или «items title» — для их заголовков, соответственно. А с помощью запроса «items created» можно выгрузить даты публикаций.)

  1. Заголовки — тут нужно указать TRUE (1) или FALSE (0). Если TRUE, то первой строкой будут заголовки столбцов фида: например, «URL» или «Title».
  2. Число объектов — указываем цифру. К примеру, можно вывести в таблицу только последние десять материалов из фида.

Пример: =IMPORTFEED («https://www.unisender.com/ru/blog/feed/»;»items url»;1;10)

Такая формула выводит ссылки на последние 10 статей, которые опубликовали в блоге Unisender. (В соседнем столбце с этих URL уже можно спарсить количество просмотров, чтобы оценить популярность — это рассмотрим позже, в разделе про IMPORTXML и xPath.)

от admin

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *