Je travaille sur un petit programme qui obtient des informations de table à partir d'un site Web et triera plus tard ces informations par DateTime.Utilisation du paquet d'agilité HTML pour obtenir plusieurs tables d'un site Web et les ajouter à la liste
Mon plus gros problème est qu'après ma fonction qui obtient le site Web et en fait une chaîne, je ne trouve pas un moyen d'obtenir l'information dans une liste. Je continue d'obtenir des erreurs NullPointer.
J'ai essayé ceci:
WebClient webClient = new WebClient();
string page = webClient.DownloadString("http://www.mufap.com.pk/payout-
report.php?tab=01");
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(page);
List<List<string>> table =
doc.DocumentNode.SelectSingleNode("//table[@class='1']")
.Descendants("tr")
.Skip(1)
.Where(tr=>tr.Elements("td").Count()>1)
.Select(tr => tr.Elements("td")
.Select(td => td.InnerText.Trim()).ToList())
.ToList();
Mais pour une raison que je continue à obtenir cette erreur:
An unhandled exception of type 'System.NullReferenceException' occurred in WebGetter.exe
Je pense que cela a à voir avec la classe je choisissais, bien que la classe de la table est nommé "1", donc cela devrait avoir la bonne référence. Lorsque j'utilise le
Je continue à obtenir ceci:
System.Collections.Generic.List1[System.Collections.Generic.List1[System.String]]
Si vous pouvez me diriger dans la bonne direction, ce serait bien.
oublié de mentionner que c'est le lien que j'utilise: https://www.athletic.net/TrackAndField/Division/Top.aspx?DivID=81830 –
Il n'y a pas de table avec la classe '1' dans votre URL –
@RubenVardanyan Alors comment puis-je obtenir la première table là ? Je suis assez nouveau à ceci: s –