Ir para o conteúdo
Windows Dragon

IHTMLElement problemas com o innerHTML

Mensagens Recomendadas

Windows Dragon

Boas pessoal, eu tenho o seguinte código

Imports System.Net
Imports System.Text.RegularExpressions
Imports System.IO
Imports System.Threading
Imports mshtml
Public Class MainFRM
Dim myPageSource As String
Dim tables As String()
Dim wb As WebBrowser
Private Sub MainFRM_Load(sender As Object, e As EventArgs) Handles MyBase.Load
	wb = New WebBrowser
	wb.ScriptErrorsSuppressed = True
	Dim th As New Thread(AddressOf LoadData)
	th.Start()
End Sub
Private Sub LoadData()
	Dim url As String = http://www.website.com
	Dim myWebRequest As HttpWebRequest = DirectCast(HttpWebRequest.Create(url), HttpWebRequest)
	myWebRequest.Method = "GET"
	Dim myWebResponse As HttpWebResponse = DirectCast(myWebRequest.GetResponse(), HttpWebResponse)
	Dim myWebSource As New StreamReader(myWebResponse.GetResponseStream())
	myPageSource = myWebSource.ReadToEnd()
	myWebResponse.Close()
	tables = Regex.Split(myPageSource, "table")		
	Dim htmlDoc As IHTMLDocument2 = New HTMLDocumentClass()
	htmlDoc.write(tables(5))
	Dim allElements As IHTMLElementCollection = htmlDoc.all
	Dim values As IHTMLElementCollection = allElements.tags("TD")
	For Each row As IHTMLElement In values
		If row.getAttribute("classname") = "ewTableRow" Then
			MsgBox(row.innerHTML)
		End If
	Next
End Sub
End Class

e o tables(5) contem o seguinte conteúdo

class="ewTable" style="text-align: center; vertical-align: top; margin-top: 10px;">
					<tr bgcolor="#eff4f4">
						<td colspan="3" style="border-right: solid 1px #000; border-left: solid 1px #000;
							border-top: solid 1px #000; border-bottom: solid 1px #000; text-align: center">
							<span><strong style="width: 100%;">ONTEM</strong></span>
						</td>
					</tr>
					<tr bgcolor="#eff4f4">
						<td style="border-right: solid 1px #000; border-left: solid 1px #000; border-top: solid 1px #000;
							width: 70px;">
							<span><strong>Values1</strong></span>
						</td>
						<td style="border-right: solid 1px #000; border-left: solid 1px #000; border-top: solid 1px #000;
							width: 70px;">
							<span><strong>values2</strong></span>
						</td>
						<td style="border-right: solid 1px #000; border-left: solid 1px #000; border-top: solid 1px #000;
							width: 70px;">
							<span><strong>values3</strong></span>
						</td>
					</tr>
					<tr>
						<td class="ewTableRow" style="border-right: solid 1px #000; border-left: solid 1px #000;
							border-bottom: solid 1px #000;">
							<strong>
								389
							</strong>
						</td>
						<td class="ewTableRow" style="border-right: solid 1px #000; border-left: solid 1px #000;
							border-bottom: solid 1px #000;">
							<strong>
								7.228
							</strong>
						</td>
						<td class="ewTableRow" style="border-right: solid 1px #000; border-left: solid 1px #000;
							border-bottom: solid 1px #000;">
							<strong>
								1.975
							</strong>
						</td>
					</tr>
				</

mas aqui MsgBox(row.innerHTML) não me dá output de nada msm que mude para innerText.

Mas o outterHTML funciona

Como é que eu consigo obter o que está dentro desse elemento?

Editado por Windows Dragon

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.