2015-01-04 11 views
5

için bir tanım için bir web sitesi içindeki öğeleri bulur.HtmlAgilityPack.HtmlNode Ben HTMLAgilityPack kullanmaya çalışıyorum SelectNodes

using System.Net.Http; 
using HtmlAgilityPack; 
Sonra

yaptım:

Eklediğim Nuget Manager ile Windows 8 evrensel bir uygulamayı (C#)

oluşturuldu: My Problem şudur

string htmlPage; 
using (var client = new HttpClient()) 
{ 
    htmlPage = await client.GetStringAsync("http://www.domain.de/"); 
} 

HtmlDocument myDocument = new HtmlDocument(); 
myDocument.LoadHtml(htmlPage); 

//this line results an error @ "SelectNodes" 
var metaTags = myDocument.DocumentNode.SelectNodes("//meta"); 

Ama görsel stüdyo diyor ki:

Error 1 'HtmlAgilityPack.HtmlNode' does not contain a definition for 'SelectNodes' 

Sorunu zaten hazırladım, ancak tüm web siteleri kodun "DocumentNode" yerine "DocumentElement" yazdığı başka bir sorunu daha çözdü.

Herhangi bir ipucunuz var mı?

Teşekkürler!

cevap

8

Evet, SelectNodes WP8 kullanılamaz ancak kullanabilirsiniz; Bunun yerine, .

+0

Çok teşekkür ederim! Sorun çözüldü! :-) –

+3

Tamam, ancak daha karmaşık XPATH sorgularını nasıl yapıyorsunuz? – BrainSlugs83

+1

doc.DocumentNode.SelectNodes ("// div [@ itemprop = 'softwareVersion']") kullanımı doc.DocumentNode.Descendants ("div"). Eşdeğerini yapmak için yer (N => N .GetAttributeValue ("itemprop", "") == "softwareVersion") –