网页抓取:没有匹配的CSS slector

时间:2018-09-19 21:44:24

标签: html css r web-scraping rvest

我刚开始抓取网页,并且试图从以下网页抓取数据:https://www.warsofninja.eu/index.php

更准确地说,我正在尝试获取其中一张桌子。问题在于,该表中的数据结构目前不适合我的网络抓取知识,因此,我需要您的帮助。我尝试使用 R 中的rvest软件包,但最终我选择了UIpath Studio解决方案,这似乎是实现目标的一种较快捷的方法。这是该页面代码的屏幕截图,其中感兴趣的元素突出显示:

enter image description here

我无法自行选择文本“àpillé”,而是使其成为所需的输出表中的变量或列。这有什么窍门?我应该怎么做?我在网上寻找了一个答案,却没有找到任何答案。我希望我的问题是可以理解的。

1 个答案:

答案 0 :(得分:0)

看看vignette("selectorgadget")软件包中的rvest。这是一个好的开始。然后,您可以使用以下代码获取Top 10 Village表:

library(tidyverse)
library(rvest, warn.conflicts = FALSE)
#> Lade nötiges Paket: xml2

url <- "https://www.warsofninja.eu/index.php"
top_10_village <- read_html(url)  %>%
  html_nodes(".col:nth-child(1) td") %>%
  html_text()

tibble(`#`       = 1:10,
       Village   = top_10_village[seq(1, length(top_10_village), 2)],
       Habitants = top_10_village[seq(2, length(top_10_village), 2)])
#> # A tibble: 10 x 3
#>      `#` Village       Habitants
#>    <int> <chr>         <chr>    
#>  1     1 Number 1      455      
#>  2     2 Beaumanoir    448      
#>  3     3 L'Astra       446      
#>  4     4 Yolo Land     438      
#>  5     5 Sexonthebeach 430      
#>  6     6 -.-           429      
#>  7     7 Konoha-       427      
#>  8     8 yuei          410      
#>  9     9 Memen         409      
#> 10    10 Moulin Huon   408

reprex package(v0.2.1)于2018-09-22创建