我想从QS世界大学排名网站(

问题描述 投票:0回答:1
library(httr) response <- GET("https://www.topuniversities.com/sites/default/files/qs-rankings-data/en/2057712.txt?1622792449?v=1622946607402") data_json <- content(response, encoding = "UTF-8") data <- jsonlite::fromJSON(data_json) df <- data.frame(data)

但是我今天运行此代码,我发现了一些错误通知

Error: Argument 'txt' must be a JSON string, URL or file.

可以告诉我提取数据的功能(((Https://www.topuniversities.com/sites/default/default/files/qs-rankings-data/en/2057712.txt)?1622792449? ))到数据框架?

	
Mark指出的是,该站点使用CloudFlare保护,该保护排除了静态刮刀和HTTP客户端(如

httr

rvest
)。

用户协议也针对任何自动访问和刮擦也明确。引起争议的是数据版权-Inagehttps://www.topuniversis.com/data-copyright

CC BY-NC-ND
r web-scraping rank httr
1个回答
1
投票
以及该特定数据集也由

archive.org

镜像,最后保存是从2023-03-28.
。 为了简化检索,我们可以使用
archiveRetriever
包: library(archiveRetriever) url_ <- "https://www.topuniversities.com/sites/default/files/qs-rankings-data/en/2057712.txt?1622792449?v=1622946607402" ranking_mementos <- retrieve_urls(homepage = url_, startDate = "2023-01-01", endDate = format(Sys.Date())) ranking_mementos #> [1] "http://web.archive.org/web/20230328102439/https://www.topuniversities.com/sites/default/files/qs-rankings-data/en/2057712.txt?1622792449?v=1622946607402" latest <- ranking_mementos[length(ranking_mementos)] jsonlite::fromJSON(latest)$data |> tibble::as_tibble() #> # A tibble: 1,184 × 13 #> core_id country city guide nid title logo score rank_display region stars #> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr> #> 1 410 United… Camb… "" 2948… "<di… /sit… 100 1 North… "" #> 2 573 United… Stan… "" 2972… "<di… /sit… 98.4 2 North… "" #> 3 253 United… Camb… "" 2942… "<di… /sit… 97.9 3 North… "" #> 4 94 United… Pasa… "" 2945… "<di… /sit… 97 4 North… "" #> 5 478 United… Oxfo… "" 2946… "<di… /sit… 96.7 5 Europe "" #> 6 201 Switze… Züri… "" 2944… "<di… /sit… 95 6 Europe "" #> 7 95 United… Camb… "" 2945… "<di… /sit… 94.3 7 Europe "" #> 8 356 United… Lond… "" 2940… "<di… /sit… 93.6 8 Europe "" #> 9 120 United… Chic… "" 2945… "<di… /sit… 93.1 9 North… "" #> 10 365 United… Lond… "" 2940… "<di… /sit… 92.9 10 Europe "" #> # ℹ 1,174 more rows #> # ℹ 2 more variables: recm <chr>, dagger <lgl>
在2023-06-28上创建了Reprexv2.0.2

在写作时间,当前的在线版本与该存档的版本相同。但是,请注意,在服务常规用户启发的Web请求时似乎不再使用。

“德克萨斯大学奥斯汀分校是一家公共研究机构,也是德克萨斯大学系统中最大的一家。该系统由加利福尼亚州的14个学术和卫生机构组成。德克萨斯大学奥斯汀分校的奥斯汀大学校园历史上风景如画奥斯汀的核心。要申请Austin作为国际学生,请立即与我们联系!
“
https://unirely.com/blog/guide-to-to-to-to-to-to-the-university-of-texas-at-as-austin-as-an-s-an-international-for-------------------------


最新问题
© www.soinside.com 2019 - 2025. All rights reserved.