Отправьте запрос в django rest api, используя httr в R - PullRequest
1 голос
/ 12 марта 2019

Я хочу отправить запрос в API в R. Я пробовал несколько способов отформатировать запрос, но безуспешно. API-интерфейс rest django содержит 1850 HTML-страниц. Вот пример:

{
    "count": 18499,
    "next": "http://www.globallometree.org/api/v1/allometric-equations/?format=json&page=2",
    "previous": null,
    "results": [
        {
            "ID_AE": 36921,
            "Species_group": {
                "ID_Species_group": 38766,
                "Group": [
                    {
                        "Family": "Combretaceae",
                        "Genus": "Anogeissus",
                        "Species": "latifolia",
                        "Subspecies": null,
                        "Species_author": null,
                        "Species_local_names": [],
                        "Scientific_name": "Combretaceae Anogeissus latifolia",
                        "ID_Family": 296,
                        "ID_Genus": 1628,
                        "ID_Species": 3838,
                        "ID_Subspecies": null
                    }
                ]
            },
            ....
      }
}
Каждая из HTML-страниц начинается с count, next, previous и results. В пределах results каждой HTML-страницы находятся 10 словарей (то есть 10 уникальных ID_AE). Я был в состоянии получить полные записи для каждой HTML-страницы. Я надеюсь сделать запрос по HTML-страницам (или по одной итеративно) в результатах на самом низком уровне. Например, я хотел бы получить все содержимое в результатах, которые соответствуют условию, например, результаты [Species_group] [Group] [Family = Combretaceae].

Мне удалось вернуть статус 200 и получить весь JSON:

 base_url = 'http://www.globallometree.org/api/v1/allometric-equations'
    resp = GET(url = base_url, authenticate(name,pw))
    parsed = fromJSON(content(resp, "text"), simplifyVector = FALSE,pretty=TRUE)

Кроме того, здесь столько документации , сколько я мог найти в этом API.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...