Update chapters
Updated chapters 2, 6, 8, 9 and 11.
This commit is contained in:
@ -51,8 +51,8 @@ système de références en XML).
|
||||
|
||||
Parmi les autres bibliothèques, la plus utilisée dans l'écosystème Python semble être [LXML](https://lxml.de)
|
||||
|
||||
```{.bash .numberLines}
|
||||
pip install lxml # pour installer la bibliothèque externe
|
||||
```bash {.numberLines}
|
||||
pip install lxml types-lxml # pour installer la bibliothèque externe
|
||||
```
|
||||
|
||||
----
|
||||
@ -62,16 +62,17 @@ pip install lxml # pour installer la bibliothèque externe
|
||||
Pour naviguer dans un document XML, il existe plusieurs façons de faire :
|
||||
|
||||
- Méthode récursive, où l'on récupère un élément pour parcourir ses enfants
|
||||
- Méthode XPATH, où l'on référence des éléments par rapport à leur "chemin" dans le document
|
||||
- Méthode [XPath]{.naming}, où l'on référence des éléments par rapport à leur "chemin" dans le document
|
||||
- Méthode [ElementPath]{.naming}, proposée par LXML via les méthodes `find` et `findall`
|
||||
|
||||
La plus simple des méthodes disponibles consiste à se baser sur le XPATH pour trouver des éléments :
|
||||
|
||||
```{.python .numberLines}
|
||||
```python {.numberLines}
|
||||
from lxml import etree
|
||||
|
||||
tree = etree.parse(r"source.xml") # récupère l'élément racine
|
||||
root = etree.parse(r"source.xml") # récupère l'élément racine
|
||||
# Récupérer les éléments de la racine CATALOG qui ont le nom CD
|
||||
items = tree.xpath("/CATALOG/CD")
|
||||
items = root.xpath("/CATALOG/CD")
|
||||
```
|
||||
|
||||
- [Guide complet sur le XPath](https://www.ionos.com/digitalguide/websites/web-development/xpath-tutorial/)
|
||||
@ -85,12 +86,12 @@ items = tree.xpath("/CATALOG/CD")
|
||||
Dans l'exemple précédent, nous avons pu récupérer, via une "requête" XPATH, un possible ensemble d'éléments.
|
||||
Ces éléments peuvent être parcourus avec une simple boucle `for`{.python} :
|
||||
|
||||
```{.python .numberLines}
|
||||
```python {.numberLines}
|
||||
from lxml import etree
|
||||
|
||||
tree = etree.parse(r"source.xml") # récupère l'élément racine
|
||||
root = etree.parse(r"source.xml") # récupère l'élément racine
|
||||
# Récupérer les éléments de la racine CATALOG qui ont le nom CD
|
||||
items = tree.xpath("/CATALOG/CD")
|
||||
items = root.xpath("/CATALOG/CD")
|
||||
|
||||
for cd in items:
|
||||
for attribute in cd:
|
||||
|
Reference in New Issue
Block a user