【问题标题】:Web-scraping: No matching CSS slector网页抓取:没有匹配的 CSS 选择器
【发布时间】:2018-09-19 21:44:24
【问题描述】:

我刚刚开始进行网络抓取,我正在尝试从该网页抓取数据:https://www.warsofninja.eu/index.php

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

enter image description here

我无法单独选择文本“à pillé”,并使其成为我想要的输出表中的变量或列。这里有什么诀窍?我该怎么做?我在网上到处寻找答案,但没有找到任何答案……我希望我的问题可以理解。

【问题讨论】:

  • 欢迎来到 SO!请添加您的尝试和代码,看看有什么问题。

标签: html css r web-scraping rvest


【解决方案1】:

查看rvest 包中的vignette("selectorgadget")。这是一个好的开始。例如,您可以使用以下代码获取 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 年 9 月 22 日创建

【讨论】:

    猜你喜欢
    • 2021-05-29
    • 2021-10-26
    • 2019-02-22
    • 2018-12-18
    • 2021-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多