R - Извлечение таблиц с веб-сайтов с использованием пакета XML

0

Я пытаюсь реплицировать метод, использованный в предыдущем ответе здесь. Скремблировать html-таблицы в R-фреймы данных, используя пакет XML для моей собственной работы, но не могу получить данные для извлечения. Веб-сайт, который я использую: http://www.footballfanalytics.com/articles/football/euro_super_league_table.html

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

library(XML)
theurl <-  "http://www.footballfanalytics.com/articles/football/euro_super_league_table.html"
tables <- readHTMLTable(theurl)
n.rows <- unlist(lapply(tables, function(t) dim(t)[1]))
tables[[which.max(n.rows)]]

Это вызывает сообщение об ошибке

Error in tables[[which.max(n.rows)]] : 
attempt to select less than one element

Может ли кто-нибудь предложить решение, пожалуйста? Есть ли что-то в этом конкретном месте, чтобы это не сработало? Или есть лучший альтернативный метод, который я могу попробовать? благодаря

Теги:

1 ответ

1
Лучший ответ

Кажется, что данные загружаются через javascript. Пытаться:

library(XML)
theurl <- "http://www.footballfanalytics.com/xml/esl/esl.xml"
doc <- xmlParse(theurl)
cbind(team = xpathSApply(doc, "/StatsData/Teams/Team/Name", xmlValue),
      points = xpathSApply(doc, "/StatsData/Teams/Team/Points", xmlValue))

Ещё вопросы

Сообщество Overcoder
Наверх
Меню