So senden Sie eine XML-Anfrage an eine API mit R

Ich versuche, den Download von ein bisschen Daten aus der API von zu automatisierendiese Regierungswebsite.

Die Website weist an:

All requests for this version should be made to the following URL:
http://api.finder.healthcare.gov/v2.0/

Ich kann viele Informationen über das Senden von XML-Anfragen finden, aber keines der Beispiele istR-spezifisch .. und es gibt viele R-Codes, die zeigen, wie man das benutztXML, httr, undRCurl Pakete, aber ich konnte keine Beispiele auf SO oder der R-Help-Mailing-Liste finden, wie es gehtsenden eine XML-Anfrage. ..es gibt mehr Dokumentation zum Parsen der Antwort.

aufdie Website der Regierung, wenn Sie auf die Schaltfläche klickenPlansForIndividualOrFamily Samples Es zeigt beispielsweise die XML-Anforderung (Code unten) an, die gesendet werden muss.

url <- "http://api.finder.healthcare.gov/v2.0/"

xml.request <-
    "<?xml version='1.0' encoding='UTF-8'?>
    <PrivateOptionsAPIRequest>
        <PlansForIndividualOrFamilyRequest>
            <Enrollees>
                <Primary>
                    <DateOfBirth>1990-01-01</DateOfBirth>
                    <Gender>Male</Gender>
                    <TobaccoUser>Smoker</TobaccoUser>
                </Primary>
            </Enrollees>
            <Location>
                <ZipCode>69201</ZipCode>
                <County>
                    <CountyName>CHERRY</CountyName>
                    <StateCode>NE</StateCode>
                </County>
            </Location>
            <InsuranceEffectiveDate>2012-10-01</InsuranceEffectiveDate>
        <IsFilterAnalysisRequiredIndicator>false</IsFilterAnalysisRequiredIndicator>
        <PaginationInformation>
            <PageNumber>1</PageNumber>
            <PageSize>10</PageSize>
        </PaginationInformation>
        <SortOrder>
            <SortField>OOP LIMIT - INDIVIDUAL - IN NETWORK</SortField>
            <SortDirection>ASC</SortDirection>
        </SortOrder>
        <Filter/>
        </PlansForIndividualOrFamilyRequest>
    </PrivateOptionsAPIRequest>"

Antworten auf die Frage(1)

Ihre Antwort auf die Frage