У меня возникли проблемы с выяснением, почему следующий код не возвращает информацию, указанную в xpath
.
Я пытаюсь выбрать данные подсчета, найденные в разделе «Основные вопросы» на странице. Я хотел, чтобы он работал для таблицы первого вопроса, а затем намеревался расширить его, чтобы делать то же самое для каждого вопроса/таблицы на странице. К сожалению, я могу заставить его вытащить интересующий меня раздел таблицы. Я полагаю, что ответ включает в себя указание дочерних элементов интересующего меня узла ‹ tr >, то есть несколько тегов ‹ td >, но мои попытки сделать это продолжать терпеть неудачу. Может ли кто-нибудь помочь мне указать интересующую меня часть таблицы? (Бонусные баллы, если это можно сделать для всех десяти столов на странице!)
library(rvest)
detailed <- html("https://www.deakin.edu.au/evaluate/results/old/detail-rep.php?schedule_select=1301&faculty_select=01&school_select=0104&unit_select=MIS202&location_select=B")
q1 <- detailed %>%
html_nodes(xpath='//*[@id="main"]/div/div/form/fieldset[2]/table[1]/tbody/tr/td[2]/div/table/tbody/tr[5]') %>%
html_table(header = TRUE, fill=TRUE)
Когда я иду к таблице предков, она вытаскивает информацию, но она чрезвычайно беспорядочна и ее трудно интерпретировать. Когда я пытаюсь указать элементы в этой таблице, я не могу извлечь информацию. Кто-нибудь может мне объяснить, почему потомки table[1]
не извлекаются? Вот код для вытягивания table[1]
:
q1 <- detailed %>%
html_nodes(xpath='//*[@id="main"]/div/div/form/fieldset[2]/table[1]') %>%
html_table(header = TRUE, fill = TRUE)
html_table
предполагает, что вы передаете узелtable
. Если вы начнете выбирать элементы глубже в таблице, это не сработает. - person MrFlick   schedule 25.06.2015