2016-02-29 7 views
5

die folgende documentation mit Ich habe eine Reihe von Tabellen aus marketwatch.comWie kratze ich einen Tisch mit Geld und XPath?

hier zu kratzen versucht, ist die durch den Code repräsentiert ein Gebrüll:

enter image description here

Der Link und XPath sind bereits enthalten im Code:

url <- "http://www.marketwatch.com/investing/stock/IRS/profile" 
valuation <- url %>% 
    html() %>% 
    html_nodes(xpath='//*[@id="maincontent"]/div[2]/div[1]') %>% 
    html_table() 
valuation <- valuation[[1]] 

ich die folgende Fehlermeldung erhalten:

Warning message: 
'html' is deprecated. 
Use 'read_html' instead. 
See help("Deprecated") 

Vielen Dank im Voraus.

+3

entfernen Sie die 'html()' und ersetzen mit 'read_html()' – cory

+0

, dass kein Fehler ist, ist es eine Warnung ist. Ihr Code wird weiterhin mit dieser Warnung ausgeführt. – SymbolixAU

+0

danke. Fest. –

Antwort

3

Diese Website ist nicht eine HTML-Tabelle nicht verwendet, so kann html_table() nichts finden. Es verwendet div Klassen column und data lastcolumn.

So können Sie so etwas wie

url <- "http://www.marketwatch.com/investing/stock/IRS/profile" 
valuation_col <- url %>% 
    read_html() %>% 
    html_nodes(xpath='//*[@class="column"]') 

valuation_data <- url %>% 
    read_html() %>% 
    html_nodes(xpath='//*[@class="data lastcolumn"]') 

tun oder sogar

url %>% 
    read_html() %>% 
    html_nodes(xpath='//*[@class="section"]') 

Um Ihnen die meisten der Weg dorthin zu gelangen.

Bitte lesen Sie auch ihre terms of use - insbesondere 3.4.