【发布时间】:2019-02-07 14:09:30
【问题描述】:
我是这方面的超级新手,正在为我的论文研究 R。这个答案中的代码终于对我有用(Extracting data from an API using R),但我不知道如何向它添加循环。当我需要所有 3360 时,我不断获取 API 的第一页。 代码如下:
library(httr)
library(jsonlite)
r1 <- GET("http://data.riksdagen.se/dokumentlista/?
sok=&doktyp=mot&rm=&from=2000-01-01&tom=2017-12- 31&ts=&bet=&tempbet=&nr=&org=&iid=&webbtv=&talare=&exakt=&planering=&sort=rel&sortorder=desc&rapport=&utformat=json&a=s#soktraff")
r2 <- rawToChar(r1$content)
class(r2)
r3 <- fromJSON(r2)
r4 <- r3$dokumentlista$dokument
当我到达 r4 时,它已经是一个数据框了。
请,谢谢!
编辑:最初,我无法获得包含该页面作为其中信息的 url。现在我有了它(下)。我仍然无法循环它。 "http://data.riksdagen.se/dokumentlista/?sok=&doktyp=mot&rm=&from=2000-01-01&tom=2017-12-31&ts=&bet=&tempbet=&nr=&org=&iid=&webbtv=&talare=&exakt=&planering=&sort=rel&sortorder=desc&rapport=&utformat=json&a=s&p="
【问题讨论】:
-
你知道你的代码需要改变什么,比如说,获取第二页吗? URL 的某些部分是否需要修改?
-
我查看了网址,但页码不存在。它在代码中,并且仅以我在 r3 中调用它的方式出现,即在解析它之后。顺便说一句,由于这是瑞典数据,因此“page”一词是“sida”,“pages”一词是“sidor”。我尝试在它之前和之后添加循环,但它不起作用。
-
谢谢,这有帮助。标题和文字看起来好像您知道如何获取下一页,只是不知道如何循环编码。这个评论更清楚了。也许编辑您的问题以包含该信息以及您从迄今为止的一个答案中学到的知识。
-
是的,对不起。不过,通过 DS_UNI 的回答,我已经弄清楚了。
-
对,所以请将该信息编辑到您的问题中。如果有人来尝试回答,请在问题中向他们展示该信息,这样他们就不必运行您的代码,然后阅读这些 cmets 和现有答案并自己将它们放在一起。