Введение в парсинг веб-страниц:

Мы знаем, что Интернет содержит всю информацию в виде веб-страниц, написанных в коде HTML. Таким образом, в Интернете содержится много данных, эти данные могут быть полезны для разных целей. Например, я хочу узнать подробности об iPhone 13 pro с разных уникальных веб-страниц, касающихся цены телефона, качества дисплея и общего обзора мобильного телефона. Я буду хранить эту собранную информацию в разных форматах файлов. Используя эти данные, я могу делать выводы, такие как гистограммы, круговые диаграммы или, может быть, я могу предсказать будущую цену на iPhone 13 pro max. Таким образом, мы можем делать что угодно, используя данные, этот процесс называется парсингом веб-страниц.

Получите весь код и файл csv из моего профиля GitHub.

процесс:

Это весь код, не беспокойтесь, если вы его не поняли, я объясню каждую строчку дальше.

#Step 1 
install.packages("rvest")
library(rvest)
#Step 2
rwiki<-'https://en.wikipedia.org/wiki/List_of_circulating_currencies'
#Step 3
countries<-rwiki %>%
read_html(rwiki) %>%
html_element('table')%>%
html_table()
#Step4
write.csv(countries,"C:/Users/HP/Desktop/scrap/contrycourency//countrycourency.csv")

Шаг 1. rvest – это библиотека R, которая в большинстве случаев используется для парсинга веб-страниц. Чтобы установить этот пакет, мы используем install.packages («rvest»), и для запуска пакета его необходимо активировать для этого, активируйте пакет, запустив эту библиотеку кода (rvest). Теперь пакет активирован, поэтому мы можем использовать элементы этого пакета.

Шаг 2: я использовал переменную rwiki для хранения ссылки на веб-страницу и присвоил ссылку переменной с помощью оператора присваивания в строковом формате.

Шаг 3. Для шага 3 я напишу весь код в одну строку, чтобы его было легко объяснить.

#Step 3
countries<-rwiki %>% read_html(rwiki) %>% html_element('table')%>% html_table()

Итак, что я сделал на этом шаге, так это

  • для чтения и импорта всего HTML-кода страницы Википедии я использовал read_html(rwiki). Здесь rwiki — это переменная, в которой я сохранил ссылку на страницу.
  • На этой веб-странице есть две таблицы, но нам нужна только первая таблица. Итак, нам просто нужно определить тег таблицы «table» по умолчанию, он выберет первую таблицу веб-страницы. Я использовал этот html_element('table'), чтобы найти тег таблицы в общем HTML-коде веб-страницы.
    - Если вам нужны обе таблицы со страницы, вы можете использовать html_elements( 'table')или для выбора второй таблицы укажите только класс второй таблицы как этот html_element('.class')
  • для печати таблицы я использовал html_table().
  • Я сохранил каждую строку шага 3 в переменной countries.

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

write.csv(countries,"path of the file//filename.csv")

вы также можете сохранить в формате Excel, но для этого вам нужно установить writexl и следовать приведенной выше строке для сохранения.

install.packages("writexl")
library(writexl)
write_xlsx(countries,"path of the file//filename.csv")

Чтобы узнать больше о пакете rvest, перейдите на официальную веб-страницу. и вы получите весь код на моей странице GitHub. Подпишись на меня в Твиттере".