Bonjour,
S.V.P est ce que vous une idée comment je peut récupérer le contenu d'un tableau html avec Html Agility Pack et C#.
Merci pour votre aide.
Bonjour,
S.V.P est ce que vous une idée comment je peut récupérer le contenu d'un tableau html avec Html Agility Pack et C#.
Merci pour votre aide.
Sans avoir plus de détails, c'est difficile de te donner une réponse précise... Il faudrait connaitre la structure de la page où tu veux récupérer ce tableau. Est-ce que c'est le seul tableau, ou est-ce qu'il y en a plusieurs ? Est-ce que le tableau a une caractéristique qui permet de le retrouver facilement (attribut id ou class par exemple) ?
Pas de questions techniques par MP ! Le forum est là pour ça...
Tutoriels : Les nouveautés de C# 6 - Accès aux données avec Dapper - Extraction de données de pages web à l'aide de HTML Agility Pack - La sérialisation XML avec .NET (Aller plus loin) - Les markup extensions en WPF
merci pour votre aide, il existe un seul tableau dans la page ci dessous un exemple de tableau.
Merci.
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
28
29
30
31
32
33 <table border="1" cellspacing="0" cellpadding="2" bordercolor= "#808080" width="652"> <tr> <td> <p align="justify"> <b>DECLARANT </b>:<br /> <br /> Personne physique liée à Louis PETIET, Administrateur</p> </td> </tr> <tr> <td> <p><br /> <b>INSTRUMENT FINANCIER</b> : Actions<br /> </p> </td> </tr> </table>
Pour récupérer le tableau, tu peux faire quelque chose comme ça :
Une fois que tu as le tableau, tu peux parcourir chaque cellule de chaque ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 WebClient wc = new WebClient(); HtmlDocument doc = new HtmlDocument(); using (Stream stream = wc.OpenRead(url)) { doc.Load(stream); } HtmlNode table = doc.DocumentNode.Descendants("table").First();
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 // Lignes var rows = table.Elements("tr"); foreach (var row in rows) { // Cellules var cells = row.Elements("td"); foreach (var cell in cells) { // Texte d'une cellule string text = cell.InnerText; ... } }
Pas de questions techniques par MP ! Le forum est là pour ça...
Tutoriels : Les nouveautés de C# 6 - Accès aux données avec Dapper - Extraction de données de pages web à l'aide de HTML Agility Pack - La sérialisation XML avec .NET (Aller plus loin) - Les markup extensions en WPF
Salut,
Petite correction :
Code c# : Sélectionner tout - Visualiser dans une fenêtre à part HtmlNode table = doc.DocumentNode.Descendants("table").First();
Pas de questions techniques par MP ! Le forum est là pour ça...
Tutoriels : Les nouveautés de C# 6 - Accès aux données avec Dapper - Extraction de données de pages web à l'aide de HTML Agility Pack - La sérialisation XML avec .NET (Aller plus loin) - Les markup extensions en WPF
Partager