CARREGAR INFORMACAO DE UM SITE

USUARIO.EXCLUIDOS 05/08/2007 05:51:55
#229544
Oi pessoal,

Tou a tentar desenvolver uma aplicação que importe um valor de um site da net e guarde numa variável.

Preciso que o meu programa vá ao site http://www.igmarkets.com/ e importe um valor que se encontra na tabela Live Prices.

Já tentei com o iNet importar o código da página e procurar esse valor lá... mas o iNet não importa toda a página.

Se existir alguma forma de ir directamente ao valor que preciso, era excelente.

O meu objectivo fina, é apresentar esse valor numa folha de excel, se souberem alguma forma de através de VBA, fazer isso e que esse valor seja actualizado minuto a minuto, era muito bom mesmo.

Muito obrigado
USUARIO.EXCLUIDOS 07/08/2007 18:07:45
#229882
Alguém me pode ajudar?
FLAVIOGUILHERME 07/08/2007 18:15:59
#229885
'Cara eu já consegui fazer o contrário, lançar dados em um determinado campo em um html, usando o WebBrowser.
Tenta isso:
'Abre o site que você quer com o WebBrowser e depois pega o objeto que você quer e depois pega os dados.

VarEnviaAI = wb.Document.contato.Mensagem.Value

'Contato = nome do html
'Mensagem = nome do campo
Espero ter ajudado.

USUARIO.EXCLUIDOS 08/08/2007 00:55:04
#229916
Cara, eu gosto de usar a API URLDownloadToFile para isso, basta num módulo ou até em seu form você declarar:

Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long

Function Download(ByVal URL As String, ByVal outFile As String) As Boolean
Dim i As Long

If (outFile = "") Or (URL = "") Then
Download = False
Else
If InStr(URL, "//") = 0 Then URL = "http://" & URL
i = URLDownloadToFile(0, URL, outFile, 0, 0)
If i = 0 Then
Download = True
Else
Download = False
End If
End If
End Function


Aí para pegar o código:

Dim f As Integer, Codigo As String, Caminho As String

Caminho = Environ$("TEMP") & "\down.tmp" 'Caminho onde salvará o arquivo HTML

Download "http://www.igmarkets.com/", Caminho

On Error Resume Next

f = FreeFile
Open Caminho For Input As #f
Codigo = Input(LOF(f), f)
Close #f
Kill Environ$("TEMP") & "\down.tmp"
Err.Clear

MsgBox Codigo


Na variável Codigo você terá todo código HTML, daí é só buscar o que precisa...

Qualquer dúvida poste...flw
USUARIO.EXCLUIDOS 08/08/2007 01:32:31
#229918
Matioli, o seu código está optimo!!!
Mas quando vi o código fonte da página retornado, apercebi-me que o que eu pretendia era o código que se visualiza clicando com o botão do lado direito na tabela "Live Prices" do tal site que mencionei... e fazendo "Ver Código Fonte".

Será que dá para pegar apenas o código fonte dessa frame? Já tentei saber o link directo para essa tabela, mas não funciona.

Obrigado
Tópico encerrado , respostas não são mais permitidas