Ich habe ein Problem mit dem Scraping von Informationen aus einem bestimmten XML-Dokument (http://www.bundestag.de/xml/mdb/index.xml).Scraping eines XML-Dokuments (geschachtelte URL-Struktur)
<mdbUebersicht>
<dokumentInfo>
<dokumentURL/>
<dokumentStand/>
</dokumentInfo>
<deleteRestore>
<deleteFlag>0</deleteFlag>
<deleteDate>20131202170000</deleteDate>
</deleteRestore>
<mdbs>
<mdb fraktion="Die Linke">
<mdbID status="Aktiv">1627</mdbID>
<mdbName status="Aktiv">Aken, Jan van</mdbName>
<mdbBioURL>
http://www.bundestag.de/abgeordnete18/biografien/A/aken_jan/258124
</mdbBioURL>
<mdbInfoXMLURL>
http://www.bundestag.de/xml/mdb/biografien/A/aken_jan.xml
</mdbInfoXMLURL>
<mdbInfoXMLURLMitmischen>/biografien/A/aken_jan.xml</mdbInfoXMLURLMitmischen>
<mdbLand>Hamburg</mdbLand>
<mdbFotoURL>
http://www.bundestag.de/blueprint/servlet/image/240714/Hochformat__2x3/177/265/83abda4f387877a2b5eeedbfd81e8eba/Yc/aken_jan_gross.jpg
</mdbFotoURL>
<mdbFotoGrossURL>
http://www.bundestag.de/blueprint/servlet/image/240714/Hochformat__2x3/316/475/83abda4f387877a2b5eeedbfd81e8eba/Uq/aken_jan_gross.jpg
</mdbFotoGrossURL>
<mdbFotoLastChanged>24.10.2016</mdbFotoLastChanged>
<mdbFotoChangedDateTime>24.10.2016 12:17</mdbFotoChangedDateTime>
<lastChanged>30.09.2016</lastChanged>
<changedDateTime>30.09.2016 12:38</changedDateTime>
</mdb>
Das Dokument enthält viele kurze biographische Aspekte von verschiedenen Personen. Unter anderem enthält es URLs zu anderen XML-Dokumenten, die eine detailliertere Biografie enthalten.
ich folgendes versuchen, die Informationen zu bekommen:
Zuerst versuche ich alle URLs für die verschiedenen Unterlagen zu bekommen von der maindocument
mdb_url <- xml_text(xml_find_all(xmlDocu, "//mdbInfoXMLURL"))
Dann implementiert ich eine for-Schleife, die alle herunterladen xml in meinem Verzeichnis
for (url in mdb_url) {
download.file(url, destfile = basename(url))
}
Danach möchte ich eine Liste der Dateien empfangen ...
files <- list.files(pattern = ".xml")
... einen bestimmten Knoten jedes XML-Dokument erhalten:
Bio1 <- files[1]
xmlfile <- read_xml(Bio1)
mdb_ausschuss1 <- xml_text(xml_find_all(xmlfile, "//gremiumName"))
Jetzt habe ich das Problem, wie ich es für alle XML-Dateien in der Liste tun? Ich habe nicht in der Lage gewesen, für diese Aufgabe eine funktionelle Schleife oder ein Skript zu schreiben ...
funktioniert super! Danke vielmals! –
Vielleicht könntest du mir noch ein letztes Mal helfen: Wie könnte ich die Datenstruktur in diesem Fall von lang auf weit drehen? In diesem Sinne gibt es für jedes neue Gremium eine neue Kolumne mit dem Attribut "Auswärtiger Ausschuss", "Wirtschaftsausschuss" etc. "wahr" oder "nicht". Ich habe den Befehl "resphape" ausprobiert, aber ich komme nicht dorthin. –
völlig separate Frage (SO Regeln/Richtlinien vorschlagen, dass Shld eine neue q sein) – hrbrmstr