Bonjour tout le monde !
Je cherche à extraire une partie du code HTML d'un site de drive hypermarché et plus particulièrement la liste des ingrédients.
J'ai bien réussi en passant par l'arborescence de la page :
Cependant, la configuration de la page change suivant les produits. Pour contourner cela j'ai donc pensé à chercher le mot "Ingrédients" dans le code, puis prendre l'élément Parent pour ensuite pointer le deuxième enfant, et donc la liste des ingrédients ("Ingrédients" étant le titre de la section).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Set HTMLElementStandardIngredients = IEDoc.body.Children(2).Children(0).Children(0).Children(0).Children(0).Children(0).Children(0).Children(1).Children(0).Children(0).Children(0).Children(2).Children(2).Children(2).Children(2).Children(1).Children(0) 'Copier les ingrédients dans "Ingredients" Ingredients = HTMLElementStandardIngredients.innerText
Mais je me heurte à l'erreur 91, sûrement un problème de langage :
Est-ce que quelqu'un peut me venir en aide ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 Sub Test() Dim IE As New InternetExplorer Dim IEDoc As HTMLDocument Dim Ingr As HTMLGenericElement Dim ListeIngr As String 'Ouvre la page Web IE.Navigate "http://courses.carrefour.fr/drive/tous-les-rayons/sauce-tomate-cuisinee-aux-petits-legumes/PID1/154072/921783/" IE.Visible = False Do Until IE.readyState = 4 DoEvents Loop Set IEDoc = IE.document Set Ingr = IEDoc.all("Ingrédients") ListeIngr = Fiche.parentElement.Children(1).innerText MsgBox ListeIngr Set IE = Nothing Set IEDoc = Nothing End Sub
En vous remerciant par avance,
Guillaume.
Partager