我无法弄清楚为什么以下代码不会返回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)
答案 0 :(得分:2)
这会让你到达你需要的地方吗?
allqs <- detailed %>%
html_nodes(css = ".result center") %>%
html_text()
t(matrix(as.numeric(allqs), 5, 10, dimnames = list(c("Strongly Disagree", "Disagree", "Neutral", "Agree", "Strongly Agree"),
paste0("Q", 1:10))))
给出了:
Strongly Disagree Disagree Neutral Agree Strongly Agree
Q1 0 4 4 9 1
Q2 1 2 2 11 2
Q3 0 0 2 11 5
Q4 1 3 2 9 3
Q5 0 3 4 10 1
Q6 0 1 5 7 2
Q7 0 3 6 6 3
Q8 1 0 2 7 8
Q9 0 0 5 7 5
Q10 0 1 4 7 5