R: rvest - 共享计数器,xpath
R: rvest - share counter, xpath
我正在尝试使用 Rvest 抓取数据。我无法从 link 的共享柜台上刮下 number/text:“753 udostępnienia”。
我使用 Google Chrome 插件 XPath helper 来查找 Xpath。我准备了一个简单的R代码:
library(rvest)
url2<- "https://www.siepomaga.pl/kacper-szlyk"
share_url<-html(url2)
share_url
share <- share_url %>%
html_node(xpath ="/html[@class='turbolinks-progress-bar']/body/div[@id='page']/div[@class='causes-show']/div[@class='ui container']/div[@id='column-container']/div[@id='right-column']/div[@class='ui sticky']/div[@class='box with-padding']/div[@class='bordered-box share-box']/div[@class='content']/div[@class='ui grid two columns']/div[@class='share-counter']") %>%
html_text()
share
但是结果等于 NA。
我哪里错了?
我想出了一个解决方案,使用 rvest
,而不是 xpath =
方法。这也使用 dplyr
包中的管道运算符来简化事情:
library(tidyverse) # Contains the dplyr package
library(rvest)
siep_url <- "https://www.siepomaga.pl/kacper-szlyk"
counter <- siep_url %>%
read_html() %>%
html_node(".share-counter") %>% # The node comes from https://selectorgadget.com/, a useful selector tool
html_text()
输出结果如下:
[1] "\n\n755\nudostępnień\n"
您可以使用 gsub()
:
清理它
counter <- gsub("\n\n755\nudostępnień\n", "755 udostępnień", counter)
这个returns755 udostępnień
,作为一个字符。希望这可以帮助。
免责声明:相当大的语言障碍,但 translate.google.com 创造了奇迹。
我正在尝试使用 Rvest 抓取数据。我无法从 link 的共享柜台上刮下 number/text:“753 udostępnienia”。
我使用 Google Chrome 插件 XPath helper 来查找 Xpath。我准备了一个简单的R代码:
library(rvest)
url2<- "https://www.siepomaga.pl/kacper-szlyk"
share_url<-html(url2)
share_url
share <- share_url %>%
html_node(xpath ="/html[@class='turbolinks-progress-bar']/body/div[@id='page']/div[@class='causes-show']/div[@class='ui container']/div[@id='column-container']/div[@id='right-column']/div[@class='ui sticky']/div[@class='box with-padding']/div[@class='bordered-box share-box']/div[@class='content']/div[@class='ui grid two columns']/div[@class='share-counter']") %>%
html_text()
share
但是结果等于 NA。 我哪里错了?
我想出了一个解决方案,使用 rvest
,而不是 xpath =
方法。这也使用 dplyr
包中的管道运算符来简化事情:
library(tidyverse) # Contains the dplyr package
library(rvest)
siep_url <- "https://www.siepomaga.pl/kacper-szlyk"
counter <- siep_url %>%
read_html() %>%
html_node(".share-counter") %>% # The node comes from https://selectorgadget.com/, a useful selector tool
html_text()
输出结果如下:
[1] "\n\n755\nudostępnień\n"
您可以使用 gsub()
:
counter <- gsub("\n\n755\nudostępnień\n", "755 udostępnień", counter)
这个returns755 udostępnień
,作为一个字符。希望这可以帮助。
免责声明:相当大的语言障碍,但 translate.google.com 创造了奇迹。