2017-06-05 18 views
0

ウェブサイトをスクラップするためのR's rvestライブラリにうってつけですが、何か新しいものに苦しんでいます。このウェブページから - http://www.naia.org/ViewArticle.dbml?ATCLID=205323044 - 私は大学のメインテーブルを掻き取ろうとしています。ここでRESTライブラリを使用してiframe内のテーブルを掻き集める

は私のコードは、現在、次のようになります。私はこの過去の苦労が

NAIA_url = "http://www.naia.org/ViewArticle.dbml?ATCLID=205323044" 
NAIA_page = read_html(NAIA_url) 

tables = html_table(html_nodes(NAIA_page, 'table')) 
# tables returns a length-2 list, however neither of these tables are the table I desire. 

# grab the correct iframe node 
iframe = html_nodes(NAIA_page, "iframe")[3] 

。 (1)何らかの理由でhtml_nodesを呼び出しても、私が望むテーブルをつかむことはできません。 (2)と私は代わりにiframeをつかんで、その中からテーブルをつかむべきかどうか分からない。

+1

あなたは – yeedle

答えて

1

埋め込まれたiframeがhtmlの場合、iframeソースを取得してそこから目的のテーブルを取得できます。


library(rvest) 
#> Loading required package: xml2 
library(magrittr) 
"http://www.naia.org/ViewArticle.dbml?ATCLID=205323044" %>% 
    read_html() %>% 
    html_nodes("iframe") %>% 
    extract(3) %>% 
    html_attr("src") %>% 
    read_html() %>% 
    html_node("#searchResultsTable") %>% 
    html_table() %>% 
    head() 
#>         College or University  City, State 
#> 1     Central Christian College ATHLETICS  McPherson, KS 
#> 2 +     Crowley's Ridge College ATHLETICS  Paragould, AR 
#> 3      Edward Waters College ATHLETICS Jacksonville, Fl 
#> 4     Fisher College ADMISSIONS | ATHLETICS  Boston, MA 
#> 5  Georgia Gwinnett College ADMISSIONS | ATHLETICS Lawrenceville, GA 
#> 6 Lincoln Christian University ADMISSIONS | ATHLETICS  Lincoln, IL 
#> Conference Enrollment 
#> 1  A.I.I.  259 
#> 2  A.I.I.   0 
#> 3  A.I.I.  805 
#> 4  A.I.I.  600 
#> 5  A.I.I.  9,720 
#> 6  A.I.I.  1,060 
+0

素晴らしい、おかげでトン 'iframe'のソースを取得し、そこからテーブルをつかむ必要があります – Canovice

関連する問題