R rvest Web 抓取 JSON 格式

问题描述 投票:0回答:1

我正在尝试从 https://www.wheeloratings.com/tennis_wta_ ratings.html 网络抓取数据。我已经从其代码的第 367 行中获取了数据所在的确切行

查看来源:https://www.wheeloratings.com/tennis_wta_ ratings.html

通过这段代码,我列出了所有“脚本”标签,数据位于#17。显然,这是 JSON 格式,但是当我使用 fromJSON() 时仍然无法正确捕获数据。它显示“错误:参数‘txt’必须是 JSON 字符串、URL 或文件。”。

这是代码:

# Link from the web to scrap
link <- "https://www.wheeloratings.com/tennis_wta_ratings.html"

# Function from rVest package.
webpage2 <- read_html(link)

imp3 <- webpage2 %>% html_elements("script") %>% .[17] %>% fromJSON()

.[17]之后的数据格式为:

{xml_nodeset (1)} [1] < script type="application/json" data-for="htmlwidget-43ed563fbe3ad2e07257" > {“x”:{“标签”:{“名称”:“反应...

数据就在那里。

关于如何正确提取它有什么想法吗?

r json web-scraping rvest
1个回答
0
投票

我能够做到。我刚刚深入研究了数据属性。

sss <- webpage2 %>% html_elements("script") %>% .[17] %>% html_text() %>% fromJSON()
sss2 <- sss$x$tag$attribs$data
sss3 <- as.data.frame(sss2)
© www.soinside.com 2019 - 2024. All rights reserved.