Преобразование HTML-таблицы, содержащей изображения, в атрибут datatable

#html #.net #vb.net #winforms #html-table

#HTML #.net #vb.net #winforms #html-таблица

Вопрос:

я использовал следующий код для преобразования внутреннего текста HTML-таблицы в datatable (используя Html-Agility-Pack):

     Imports System.Net

    Public Sub ParseHtmlTable(byval HtmlFilePath as String)

    Dim webStream As Stream
    Dim webResponse = ""
    Dim req As FileWebRequest
    Dim res As FileWebResponse

    ' REQUEST PAGE (We are requesting Google Finance Page with NSE:RENUKA Stock Info

    req = WebRequest.Create("file:///" amp; HtmlFilePath)



    req.Method = "GET" ' Method of sending HTTP Request(GET/POST)

    res = req.GetResponse ' Send Request

    webStream = res.GetResponseStream() ' Get Response

    Dim webStreamReader As New StreamReader(webStream)

    Dim htmldoc As New HtmlAgilityPack.HtmlDocument
    htmldoc.LoadHtml(webStreamReader.ReadToEnd())

    Dim nodes As HtmlAgilityPack.HtmlNodeCollection = htmldoc.DocumentNode.SelectNodes("//table/tbody/tr")

    Dim dtTable As New DataTable("Table1")

    Dim Headers As List(Of String) = nodes(0).Elements("th").Select(Function(x) x.InnerText.Trim).ToList

    For Each Hr In Headers

        dtTable.Columns.Add(Hr)

    Next


    For Each node As HtmlAgilityPack.HtmlNode In nodes

        Dim Row = node.Elements("td").Select(Function(x) x.InnerText.Trim).ToArray

        dtTable.Rows.Add(Row)

    Next


    dtTable.WriteXml("G:1.xml", XmlWriteMode.WriteSchema)

    End Sub
  

Как преобразовать HTML-таблицу, содержащую изображения, в Datatable и сохранить изображения в двоичном виде или сохранить их ссылки с помощью VB.net

Ответ №1:

Наконец-то я нашел ответ. изображения выглядят как:

 <img src="img.jpg"/> 
  

Мы можем использовать

 .SelectNodes("./img").Attributes("src").Value()
  

Чтобы вернуть путь к изображению на узле, содержащем его