Ваша первая ошибка заключается в том, что вы пытаетесь применить метод для read_html
(html_nodes
) непосредственно к URL-адресу. Вам нужно поместить read_html(url)
в цепочку команд:
items <- read_html(url) %>% html_nodes(xpath='//*[@id="mw-content-text"]/div/table[2]') %>% html_table()
для вашей второй ошибки (и связанной с моим переименованием вашей переменной выше); list - встроенный метод, поэтому его не следует использовать в качестве имени переменной. Переименуйте эту переменную там, где она когда-либо использовалась:
items <- items[[1]]
Я, вероятно, переписал бы, чтобы использовать более быстрый css селектор класса и html_node
метод для извлечения только одной таблицы. Затем используйте более описательное имя.
constituency_table <- read_html(url) %>% html_node('.wikitable') %>% html_table()