Парсинг, HtmlAgilityPack - C#

Узнай цену своей работы

Формулировка задачи:

В общем давно хотел затронуть тему парсинга, сейчас появился повод... В общем полазил я по инету и увидел что многие советуют "HtmlAgilityPack", зашел, скачал, посмотрел пример, и немного был в не понятках, так как пример всего 1:
HtmlDocument doc = new HtmlDocument();
 doc.Load("file.htm");
 foreach(HtmlNode link in doc.DocumentElement.SelectNodes("//a[@href"])
 {
    HtmlAttribute att = link["href"];
    att.Value = FixLink(att);
 }
 doc.Save("file.htm");
Короче разобраться сам не смог... Объясните как работает парсер?

Решение задачи: «Парсинг, HtmlAgilityPack»

textual
Листинг программы
    Public Sub rer3()
        Dim Request As System.Net.HttpWebRequest
        Dim Response As System.Net.HttpWebResponse
        Dim MyStreamReader As System.IO.StreamReader
        Dim Content As String
        Request = System.Net.HttpWebRequest.Create("") 'тут урл
 
        Request.UserAgent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.10 (KHTML, like Gecko) Chrome/8.0.552.237 Safari/534.10"
 
 
        Response = Request.GetResponse()
 
 
        MyStreamReader = New System.IO.StreamReader(Response.GetResponseStream(), System.Text.Encoding.GetEncoding(1251))
        Content = MyStreamReader.ReadToEnd()
        MyStreamReader.Close()
 
 
        Dim doc As mshtml.IHTMLDocument2 = New mshtml.HTMLDocument
        doc.clear()
        doc.write(Content)
        doc.close()
 
        Dim div As mshtml.HTMLDivElement
        div = doc.GetElementById("mycontent")
        If Not div Is Nothing Then
            Dim tbl As mshtml.HTMLTable
            tbl = div.getElementsByTagName("table").item(0)
            If Not tbl Is Nothing Then
 
                For Each tr As mshtml.HTMLTableRow In tbl.rows
                    If tr.className Is Nothing Then Continue For
                    If tr.className.Contains("tabletext") = True Then
                        Debug.Print(tr.innerText)
                    End If
                Next
            End If
 
 
        End If
 
    End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4 из 5