Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
|
beautifulsoup [2019/04/08 07:20] root angelegt |
beautifulsoup [2019/04/08 08:45] (aktuell) root [Elementzugriff] |
||
|---|---|---|---|
| Zeile 8: | Zeile 8: | ||
| ===== Initialisierung ===== | ===== Initialisierung ===== | ||
| + | |||
| + | * es muss lxml installiert sein | ||
| + | * das ist der einzige derzeit unterstützte XML-Parser | ||
| + | |||
| < | < | ||
| Zeile 21: | Zeile 25: | ||
| * daten ist das zu parsende XML | * daten ist das zu parsende XML | ||
| * Parsername ist der Name des zu verwendenden Parsers | * Parsername ist der Name des zu verwendenden Parsers | ||
| + | * bei XML gibt es derzeit nur einen Parser " | ||
| + | Beispiel: | ||
| + | < | ||
| + | daten = '<? | ||
| + | soup = BeautifulSoup(daten, | ||
| + | </ | ||
| + | |||
| + | soup repräsentiert anschließend den Tree. | ||
| + | ===== Elementzugriff ===== | ||
| + | |||
| + | * das Objekt was durch die Initialisierung zurückgegeben wurde enthält das Dokument als Tree | ||
| + | * Jedes Element des Trees ist ein eigenes Objekt (inkl. der Texte zwischen Tags) | ||
| + | |||
| + | Um ein Element im Baum anzusprechen: | ||
| + | < | ||
| + | soup.Element.Unterelement.Unterunterelement | ||
| + | </ | ||
| + | |||
| + | Beispiel: | ||
| + | < | ||
| + | soup.crossRefIDorSnapshotData.snapshotData.snapshotDeviceResponseInfo.connectionIdentifier.callID | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== String-Zugriff ==== | ||
| + | |||
| + | * Zugriff auf die Strings zwischen Tags | ||
| + | * Erfolgt über das Objekt " | ||
| + | * ist vom Typ " | ||
| + | |||
| + | < | ||
| + | soup.Element.Unterelement.Unterunterelement.string | ||
| + | </ | ||
| + | |||
| + | Beispiel: | ||
| + | |||
| + | < | ||
| + | soup.crossRefIDorSnapshotData.snapshotData.snapshotDeviceResponseInfo.connectionIdentifier.callID.string | ||
| + | </ | ||