HtmlAgilityPack et Windows 8 WinRT

html-agility-pack windows-runtime

Question

J'essaie de créer une application de métro pour Windows 8. Dans cette application, j'essaie d'analyser les données d'un site Web. Pour cela, j'utilise HtmlAgilityPack 1.4.6. MAIS je suis vraiment confus à propos de 'Dose HAP 1.4.6 fonctionne avec Windows 8?' et 'Dose-t-il supporter Xpath?' Trop d’informations déroutantes sur Codeplex. Pour l'instant, il semble que cela fonctionne sous Windows 8 MAIS je ne peux pas voir la méthode HtmlNode.SelectNode Si Xpath ne fonctionne pas, existe-t-il une autre option pour effectuer l'analyse syntaxique? Pouvez-vous me diriger vers un tutoriel ou des exemples? S'il vous plaît...

Le tiens

Réponse acceptée

Vous pouvez utiliser l'API LINQ:

var doc = new HtmlDocument();
doc.LoadHtml(contents);
var programmes = doc.DocumentNode.Descendants().Where(d => d.GetAttributeValue("class", "") == "program")

Malheureusement, je n'ai pas pu trouver beaucoup d'informations à jour sur cette API.


Réponse populaire

J'ai créé il y a quelques semaines mon propre algorithme pour enregistrer une page Web et j'ai également résolu le problème d'analyse du code html pour img css js dans Windows 8 metro-app à l'aide de ces quelques lignes: (pour toutes les images, en HtmlDocument html , exemple de liens )

IEnumerable<HtmlNode> imghrefNodes = html.DocumentNode.Descendants().Where(n => n.Name == "img");
foreach (HtmlNode img in imghrefNodes)
{
   HtmlAttribute att = img.Attributes["src"];
   //in att.Value you can find your img url
   //Here you can do everything what you want with all img links by editing att.Value
}

Pour css, vous pouvez simplement remplacer img par link et src par href . Pour les autres nœuds de la même manière.




Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi