{"id":14293,"url":"\/distributions\/14293\/click?bit=1&hash=05c87a3ce0b7c4063dd46190317b7d4a16bc23b8ced3bfac605d44f253650a0f","hash":"05c87a3ce0b7c4063dd46190317b7d4a16bc23b8ced3bfac605d44f253650a0f","title":"\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0439 \u0441\u0435\u0440\u0432\u0438\u0441 \u043d\u0435 \u043f\u043e\u0442\u0440\u0430\u0442\u0438\u0432 \u043d\u0438 \u043a\u043e\u043f\u0435\u0439\u043a\u0438","buttonText":"","imageUuid":""}

3 способа очистки данных из таблицы

Внутри веб-страниц есть много данных, представленных в виде таблицы. Однако это может быть довольно сложно, когда вы пытаетесь сохранить данные на локальных компьютерах для последующего доступа. Проблема будет в том, что данные встроены в HTML, который невозможно загрузить в структурированном формате, таком как CSV. Очистка веб-страниц - это самый простой способ получить данные на локальном компьютере.

  • Google Таблицы
  • Octoparse (инструмент для очистки веб-страниц)
  • Язык R (с использованием пакета rvest)

Google Таблицы

В таблицах Google есть отличная функция под названием Import Html, которая может извлекать данные из таблицы на HTML-странице с помощью выражения исправления = ImportHtml (URL, «table», num) .

Шаг 1: Откройте новый Google Листовая и введите т ч е выражение в заготовке.

Появится краткое введение в формулу.

Шаг 2. Введите URL-адрес (пример: https://en.wikipedia.org/wiki/Forbes%27_list_of_the_world%27s_highest-paid_athletes ) и настройте поле индекса по мере необходимости.

Выполнив два вышеуказанных шага, мы можем скопировать таблицу в Google за считанные минуты. По-видимому , Google Таблицы - отличный способ помочь нам напрямую перенести таблицу в таблицы Google. Однако есть очевидное ограничение. Это было бы такой обыденной задачей, если бы мы планировали парсить таблицы на нескольких страницах с помощью Google Таблиц. Следовательно, вам нужен более эффективный способ автоматизации процесса.

Очистите таблицы с помощью инструмента для очистки веб-страниц

Чтобы лучше проиллюстрировать мою точку зрения, я буду использовать этот веб-сайт, чтобы показать вам процесс парсинга, https://www.babynameguide.com/categoryafrican.asp?strCat=African.

Прежде всего, скачайте Octoparse и запустите его.

Шаг 1: Щелкните Расширенный режим, чтобы начать новый проект.

Шаг 2: Введите целевой URL-адрес в поле и нажмите «Сохранить URL-адрес», чтобы открыть веб-сайт во встроенном браузере Octoparse.

Шаг 3: Создайте пагинацию в 3 клика:

а) Нажмите «B» в браузере.

б) Нажмите «Выбрать все» на панели «Советы по действию».

c) Нажмите «Циклический щелчок по каждому URL» на панели «Советы по действию».

Теперь мы видим, что в блоке рабочего процесса создан цикл разбивки на страницы .

Шаг 4: Очистите таблицу с помощью щелчков ниже.

а) Щелкните первую ячейку в первой строке таблицы.

б) Нажимайте на значок расширения на панели «Советы по действию», пока вся строка не будет выделена зеленым цветом (обычно тег должен быть TR).

c) Нажмите «Выбрать все подэлементы» на панели «Советы по действию», затем «Извлечь данные» и «Извлечь данные в цикле».

Цикл очистки таблицы встроен в рабочий процесс.

Шаг 5: Извлеките данные

Выполнив приведенные выше 5 шагов, мы можем получить следующий результат.

По мере добавления функции разбивки на страницы весь процесс очистки становится более сложным. Тем не менее, мы должны признать, что Octoparse() лучше справляется с массовым парсингом данных.

И что самое удивительное, нам не нужно ничего знать о кодировании. Тем не менее, независимо от того, программисты мы или нет, мы можем создать своего «краулера», чтобы получать необходимые данные самостоятельно. Чтобы получить дополнительные сведения о парсинге данных из таблицы или формы, см. Могу ли я извлечь таблицу / форму?

Однако, если вы знаете некоторые знания о кодировании и хотите написать сценарий самостоятельно, то использование пакета rvest языка R - самый простой способ помочь вам очистить таблицу.

Язык R (с использованием пакета rvest)

В этом случае я также использую этот веб-сайт https://www.babynameguide.com/categoryafrican.asp?strCat=African в качестве примера, чтобы показать, как очищать таблицы с помощью rvest.

Прежде чем приступить к написанию кода, нам нужно знать некоторые основные грамматики о пакете rvest.

html_nodes (): выберите конкретную часть в определенном документе. Мы можем выбрать использование селекторов CSS, таких как html_nodes (doc, "table td"), или селекторов xpath, html_nodes (doc, xpath = "// table // td")

html_tag (): извлечь имя тега. Некоторые похожие: html_text (), html_attr () и html_attrs ()

html_table (): анализ HTML-таблиц и их извлечение в R Framework.

Помимо вышеперечисленного, есть еще несколько функций для имитации поведения человека при просмотре страниц. Например, html_session (), jump_to (), follow_link (), back (), forward (), submit_form () и так далее.

В этом случае нам нужно использовать html_table () для достижения нашей цели, извлекая данные из таблицы.

Сначала загрузите R ( https://cran.r-project.org/ ).

Шаг 1: Установите rvest.

Шаг 2: Начните писать коды, как показано на рисунке ниже.

Библиотека (rvest): Импортируйте пакет rvest

Библиотека (magrittr): Импортируйте пакет magrittr

URL: целевой URL

Чтение HTML: доступ к информации по целевому URL

Список: прочитать данные из таблицы

Шаг 3: После того, как весь код написан в штрафной R, нажмите «Enter», чтобы запустить скрипт. Теперь мы можем сразу получить информацию о таблице.

Похоже, что использование инструмента для очистки веб-страниц требует не меньше усилий, чем написание нескольких строк кода для извлечения данных таблицы. На самом деле, программирование требует крутого обучения, что поднимает порог для людей, которые в целом могут ощутить настоящую мощь веб-скрапинга. В этой ситуации людям, которые не работают в сфере высоких технологий, сложнее получить конкурентное преимущество в использовании веб-данных.

Я надеюсь, что приведенное выше руководство поможет вам получить общее представление о том, как инструмент веб-парсинга может помочь вам с легкостью достичь того же результата, что и программист.

0
Комментарии
-3 комментариев
Раскрывать всегда