Zdá se mi, že na tohle bude lepší použít něco jako HtmlAgilityPack, který Vám přečte i HTML, které není zrovna validní a zveřejní jej pomocí rozhraní velmi podobnému XmlDocumentu (nebo HtmlDocumentu, pokud máte nějakou zkušenost s komponentou WebBrowser a MSHTML). Dále Vám pomůže naučit se XPath, pokud jej již neovládáte, protože poskytuje velmi hezkou cestu jak se dobrat toho správného prvku ve Vašem HTML dokumentu pomocí metod SelectNodes a SelectSingleNode třídy HtmlDocument z HtmlAgilityPack. Vybrání prvku v Html ukazuje sekce Examples na stránkách HtmlAgilityPacku:
Dim document As New HtmlDocument()
document.Load("index.html")
For Each node As HtmlNode In document.SelectNodes("//a[href]")
Console.WriteLine(String.Format("Nalezen odkaz na {0}.", node.Attributes("href").Value))
Next
HtmlAgilityPack naleznete na CodePlexu: http://htmlagilitypack.codeplex.com Krátký tutorial k XPath můžete nalézt třeba zde: http://www.w3schools.com/xpath Je dobré naučit se používat funkce v XPath, protože odstíní spoustu kódu, který by jinak padl na navigaci v tom HTML dokumentu a dobrání se správného elementu. S pomocí XPath buď element(y) najdete - úspěch, nebo dostanete null (Nothing ve Visual Basicu) a víte, že se buď změnila struktura HTML, které parsujete a nebo nastala nějaká jiná chyba.
|