使用R对Webscraping html表

时间:2016-08-19 08:05:21

标签: html r screen-scraping

我已经从Stackoverflow的用户那里获得了一些帮助,试图解决这个问题。但是,我遇到了新的麻烦:

$ echo "23 45" | sed -r 's/^([0-9]*) (.)/YEAH \2---\1---/'
YEAH 4---23---5

我想获得重拍和考试的考试成绩,但由于这两个表的两个标题都相同,因此R只取得重拍的值。 具体来说,我想在标题Resultater

下的两个表格中,将“Antal”列放在等级12,10,7,4,20,2,-3的旁边。

任何帮助都会受到很多赞赏! :)

1 个答案:

答案 0 :(得分:0)

results <- html_nodes(pg, xpath=".//td[@style='width: 50%;' and 
                                       descendant::h3[contains(text(), 'Resultater')]]/table")

html_table(results[[1]])
##   Karakter Antal    Antal
## 1       12    11  (9,6 %)
## 2       10    48 (41,7 %)
## 3        7    41 (35,7 %)
## 4        4     4  (3,5 %)
## 5       02     1  (0,9 %)
## 6       00     1  (0,9 %)
## 7       -3     4  (3,5 %)
## 8  Ej mødt     5  (4,3 %)

html_table(results[[2]])
##   Karakter Antal    Antal
## 1       12     0  (0,0 %)
## 2       10     0  (0,0 %)
## 3        7     1  (9,1 %)
## 4        4     1  (9,1 %)
## 5       02     1  (9,1 %)
## 6       00     1  (9,1 %)
## 7       -3     0  (0,0 %)
## 8  Ej mødt     7 (63,6 %)