html nodes id,r – 如何将xpath传递给html_nodes()?

我想使用html_nodes从谷歌搜索结果中搜集组织的名称(我只需要第一个元素,假设这将是最好的猜测).

现在,我试图使用其xpath来定位第一个结果,并将其传递给函数html_nodes.

要查找xpath,我使用的是谷歌浏览器,如下图所示

SLwo0.png

这给了我* * [@ id =“rso”] / div [1] / div / div [1] / div / div / h3 / a作为第一个结果标题的xpath.但是,当我尝试将其传递给html_nodes()时,我得到一个空字符串:

page %>% html_nodes(xpath='//*[@id="rso"]/div[1]/div/div[1]/div/div/h3/a')

{xml_nodeset (0)}

虽然我期待字符串The A-Test 2017 Workshop.

如何使用xpath或css获取该标记的内容?

最佳答案 在抓取网站时,

selectorgadget是一个很棒的工具.使用这个我可以确定使用谷歌搜索结果,可以使用以下css-tag找到所有标题:.r.

为了刮取结果,你可以使用这样的东西:

library(rvest)

# searching for `rstudio`

page

page %>%

html_nodes(".r") %>%

html_text()

#> [1] "RStudio – Open source and enterprise-ready professional software ..."

#> [2] "Download"

#> [3] "Download RStudio Server"

#> [4] "RStudio Server"

#> [5] "Shiny"

#> [6] "RStudio – Wikipedia"

#> [7] "RStudio - Wikipedia"

#> [8] "Datenrettung | R-Studio 8.3 Deutsch | Software zur Datenrettung ..."

#> [9] "GitHub - rstudio/rstudio: RStudio is an integrated development ..."

#> [10] "RStudio · GitHub"

#> [11] "R-Studio"

#> [12] "Install RStudio with R Server on HDInsight - Azure | Microsoft Docs"

您可以通过子集轻松找到第一个:

page %>%

html_nodes(".r") %>%

html_text() %>%

.[1]

#> [1] "RStudio – Open source and enterprise-ready professional software ..."

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值