Question

J'ai besoin d'un conseil pour un projet que je suis sur le point de commencer.

En quelques mots, mon application doit accéder à un certain site Web de football, télécharger le code HTML et extraire les données nécessaires.

C’est ce que j’ai fait jusqu’à présent:

:: 1) Accédez à un site Web de football donné (ex. http://www.livescore.com/default.dll?page=england ) et téléchargez le code HTML à l'aide de WebClient.

:: 2) L'utilisation de SgmlReader convertit le code HTML en XML

:: 3) À l'aide de XmlDocument, récupérez les données que je recherche. Cela implique généralement:

::::::: 3.1) Récupération de noeuds à l'aide de GetElementsByTagName () (ex. GetElementsByTagName ("tr"))

::::::: 3.2) Parcourir la liste des noeuds renvoyés par la méthode GetElementsByTagName ()

Existe-t-il une meilleure façon de faire ce que j'essaie de faire?

Je pensais à LINQ to XML. Pensez-vous que cela va améliorer les performances?

Toute suggestion ou tout commentaire serait grandement apprécié!

Était-ce utile?

La solution

Utilisez simplement HTML Agility Pack! http://www.codeplex.com/htmlagilitypack

De cette manière, vous pouvez interroger le document à l'aide de XPath pour obtenir les nœuds dont vous avez besoin. Vous pouvez même utiliser le plugin Firebug de Firefox pour vous aider à construire vos requêtes XPath

Autres conseils

Utilisez un service tel que ces gars qui ont presque tout fait pour vous. Vous pouvez également utiliser un service gratuit tel que Dapper . Je pense que vous pouvez exporter des données dans différents formats, bien que je ne sache pas si vous pouvez récupérer les données en temps réel, il se peut que vous ayez un délai.

Si vous ne souhaitez pas tout programmer en interne à l'aide d'une solution tierce, vous gagnerez du temps et de l'argent.

Une fois que vous avez converti les données au format XML, vous pouvez utiliser XSLT pour le transformer en un ensemble de XML plus simple et mieux adapté à vos besoins. À partir de là, vous pouvez utiliser LINQ to XML pour extraire les données dont vous avez besoin. L’avantage de cette approche est qu’elle sépare le site Web de la collecte de données. Ainsi, lorsque le site Web change de format, vous pouvez simplement changer le XSLT pour qu’il corresponde et que rien d’autre ne soit touché.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top