如何从R的Indeed招聘网站上刮取公司评级

我从来没有使用过HTML或CSS,但我知道R,所以我在网上和Stack中看了几种搜刮方法,以便在R中进行搜刮。我得到的是 character(0) 其中,在例子中,该公司的网址有 4.0 评分。

这是我的尝试。

library(rvest)
library(tidyverse)
library(xml2)

#example URL
url<- "https://www.indeed.com/viewjob?jk=a25a91736b1f7042&tk=1e3q54n49heai800&from=serp&vjs=3&advn=8876452989351355&adid=95236293&sjdu=TDSJNe66qIM3gcXFOG94m--bPylNW2vvO3WAHEKN7JhCAD1FQ-2FXD1gQyElsLNkg6gfXO2CD3rQYOYjO9iXITyFdYOp8tCECkHuDmf3Og8qdMmciGFIv2ahigETjLmuY8uXdLjnQTg4__yOXqHJkA"

page<- read_html(url)


page%>%
   rvest::html_nodes("span")  %>%
   rvest::html_nodes(xpath = '//*[contains(concat( " ", @class, " " ), concat( " ", "ratingsContent", " " ))]')%>%
   rvest::html_text()

#Output is 
#character(0)
#Where as it should have been 4.0!

有谁能告诉我如何获得它,如果公司缺少评级,我如何返回?NA?

解决方案:

你似乎弄错了xpath。从源文件来看,你要找的值包含在下面的 content 的属性 meta 的标签,其中有 itemprop 属性 "ratingValue".

下面是一个使用你的问题的url的工作可复制的例子。

read_html(url) %>%
  html_nodes(xpath = "//meta[contains(@itemprop, 'ratingValue')]") %>%
  html_attr("content") %>%
  unique()
#> [1] "4.0"

给TA打赏
共{{data.count}}人
人已打赏
未分类

在nextjs静态网站上等待CSS加载?

2022-9-10 16:19:21

未分类

一个非静态类中的静态方法是否会使其成为静态类c#[重复]

2022-9-10 16:30:36

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索