我想用rvest在网站上刮一张表。我可以抓取页面上的几个元素,但不能抓取表或表内的元素。我怀疑这与表是一个"框架"有关。但到目前为止,我没有找到+抓取源html。
提前感谢!阿德里安·
# set up
library(rvest)
library(tidyverse)
# scraping
url <- "https://u.gg/lol/top-lane-tier-list?rank=iron"
main_page <- read_html(url)
patch <- html_node(main_page, "#stats-tables-container-ID > div.title-header > h1 > div") %>% html_text()
rank <- html_node(main_page, ".rank-option") %>% html_text()
table <- html_table(main_page, ".#stats-tables-container-ID > div.stats-tables__content-container > div > div > div > div.content-section.ReactTable.ugg-table-2.tier-list")
我能够提取表,但没有回报。我使用了以下代码:
library(stringr)
library(RSelenium)
url <- "https://u.gg/lol/top-lane-tier-list?rank=iron"
shell('docker run -d -p 4445:4444 selenium/standalone-firefox')
remDr <- remoteDriver(remoteServerAddr = "localhost", port = 4445L, browserName = "firefox")
remDr$open()
remDr$navigate(url)
web_Obj_Table <- remDr$findElement("xpath", '//*[@id="stats-tables-container-ID"]/div[6]/div/div/div/div[1]')
text_Table <- web_Obj_Table$getElementText()
text_Table <- stringr::str_split(text_Table, "n")
我得到了以下结果:
[1] "Rank" "Role" "Champion" "Tier" "Win Rate" "Pick Rate" "Ban Rate"
[8] "Counter Picks" "Matches" "1" "Dr. Mundo" "S+" "55.49%" "5.1%"
[15] "4.6%" "9,032" "2" "Yorick" "S+" "53.88%" "3.7%"
[22] "6.0%" "6,596" "3" "Lillia" "A" "53.38%" "2.0%"
[29] "3.9%" "3,522" "4" "Illaoi" "S+" "53.18%" "6.1%"
[36] "19.6%" "10,881" "5" "Singed" "A" "53.14%" "1.2%"
[43] "0.6%" "2,215" "6" "Mordekaiser" "S+" "52.88%" "12.2%"
[50] "18.9%" "21,753" "7" "Sett" "S+" "52.06%" "11.1%"
[57] "12.3%" "19,846" "8" "Trundle" "A" "51.92%" "1.5%"
[64] "4.4%" "2,687" "9" "Urgot" "S" "51.87%" "4.3%"
[71] "4.2%" "7,608" "10" "Garen" "S+" "51.84%" "9.9%"
[78] "4.9%" "17,640" "11" "Tahm Kench" "A" "51.77%" "2.5%"
[85] "2.3%" "4,516" "12" "Teemo" "S+" "51.55%" "10.6%"
[92] "25.7%" "18,969" "13" "Swain" "A" "51.47%" "1.2%"
[99] "10.7%" "2,139" "14" "Volibear" "S" "51.12%" "5.9%"
[106] "9.0%" "10,450" "15" "Nasus" "S" "50.99%" "6.3%"
[113] "5.4%" "11,211" "16" "Olaf" "S" "50.96%" "5.2%"
[120] "7.7%" "9,361" "17" "Ornn" "A" "50.77%" "2.5%"
[127] "0.6%" "4,536" "18" "Shen" "A" "50.70%" "1.9%"
[134] "0.3%" "3,414" "19" "Jax" "A" "50.42%" "6.9%"
[141] "6.2%" "12,285" "20" "Wukong" "A" "50.35%" "1.9%"
[148] "8.7%" "3,404" "21" "Graves" "A" "50.32%" "1.0%"
[155] "3.5%" "1,733" "22" "Kled" "A" "50.29%" "1.2%"
[162] "1.2%" "2,066" "23" "Sion" "B" "50.18%" "1.9%"
[169] "0.5%" "3,398" "24" "Yone" "A" "50.03%" "5.8%"
[176] "19.9%" "10,366" "25" "Yasuo" "B" "49.86%" "3.0%"
[183] "33.6%" "5,303" "26" "Kayle" "B" "49.73%" "6.1%"
[190] "3.8%" "10,899" "27" "Cho'Gath" "B" "49.38%" "2.7%"
[197] "1.8%" "4,844" "28" "Tryndamere" "B" "49.34%" "5.1%"
[204] "8.1%" "9,040" "29" "Irelia" "B" "49.28%" "4.5%"
[211] "14.0%" "8,032" "30" "Malphite" "B" "49.23%" "3.3%"
[218] "2.6%" "5,832"