2016-07-11 2 views
2

Я пытаюсь очистить клуб, в котором играют футболисты в списках игр (например, для Алана Ширера в http://www.transfermarkt.com/alan-shearer/leistungsdatendetails/spieler/3110/wettbewerb/GB1, особенно в таблице № 3, hughe one под названием «премьер-лига ")rvest scrape из указанной колонки в таблице

Раздражает клуб в столбце« Для »таблицы, закодирован как изображение с классом« tiny_wappen ». Я могу соскрести их и поместить их в data.frame с

link <- "http://www.transfermarkt.com/alan-shearer/leistungsdatendetails/spieler/3110/wettbewerb/GB1" 
    UrlPage <- read_html (link) 
    Node <- UrlPage %>% html_nodes("table") %>% `[`(3) %>% html_nodes("img.tiny_wappen") 
    ClubFor <- data.frame(html_attr(Node, "alt")) 

, но некоторые (примерно один из каждых пяти) клубов в соседнем столбце (против) также в этом классе изображения, так что я получаю список, в котором были разбиты клубы. Есть ли способ указать столбец таблицы, чтобы очистить (или какой-либо другой более умный способ достичь того, что я хочу)?

упреждающие благодаря как всегда,

ответ

2

Вы можете использовать xpaths захватить четвертую ячейку каждой строки

Node <- UrlPage %>% 
    html_nodes(xpath = "//*[@id='main']/div[9]/div[1]/div[2]/div[3]/table/tbody/tr/td[4]/a/img") 

ClubFor = Node %>% 
    html_attr("alt") %>% 
    data.frame() 
Смежные вопросы