Nada mais que uma classe utilizada onde a página alvo é lida e tratada de acordo com a necessidade, uma fajuta brincadeira com "ponteiros" dentro do codigo da página e pronto temos nossa tabela de indicadores financeiros personalizada.
Segue código comentado:
<!-- Cria cabeçalho para tabela -->
<DIV class=indicadoresHome>
<TABLE class=tabIndicadores cellSpacing=1 cellPadding=2 border=0>
<TBODY>
<TR>
<TD class=tdIndicadoresHeader>Indicadores</TD>
<TD class=tdIndicadoresHeader align=middle>Variação</TD>
<TD class=tdIndicadoresHeader align=middle>Valor</TD>
<TD class=tdIndicadoresHeader align=middle>Data</TD>
<TD class=tdIndicadoresHeader align=middle>Hora</TD></TR>
<TR>
<!-- Inicia código ASP-->
<%
Dim obj, textHTML, f, i, dadosind, bovespa, nasdaq
'Cria o objeto que lê uma pagina
Set obj = CreateObject("MSXML2.ServerXMLHTTP")
'Abre a pagina
obj.open "GET", "http://folha.uol.com.br/"
obj.send
'Recebe o centeudo da pagina
textHTML = obj.ResponseText
textHTML = Replace(Lcase(textHTML),"class=""financierdatavalues""", "align=right")
' Procura pela posição da string "trj-indicadores-100x15.gif" que a imagem cabeçalho da tabela no site da folha
i = 1
i = inStr(i,textHTML,"trj-indicadores-100x15.gif")
' Procura pela 1ª tag <tr> depois de "<tr>"
i = inStr(i, textHTML,"<tr>")
' Procura pela tag "<td colspan=" depois de "<tr>"
f = inStr(i, textHTML,"<td colspan=")
'Variavel que recebe apenas a tabela
dadosind = Mid(textHTML,i,(f-i))
dadosind = Replace(dadosind, "r$", "R$")
'bovespa
i = 1
i = inStr(i,dadosind,"bovespa")
i = inStr(i, dadosind,"bovespa")
f = inStr(i, dadosind,"nasdaq")
bovespa = Mid(dadosind, i+17,((f-i)-53))
'nasdaq
i = 1
i = inStr(i,dadosind,"nasdaq")
i = inStr(i, dadosind,"nasdaq")
f = inStr(i, dadosind,"dow jones")
nasdaq = Mid(dadosind,i+16,(f-i)-52)
'down jones
i = 1
i = inStr(i,dadosind,"dow jones")
i = inStr(i, dadosind,"dow jones")
f = inStr(i, dadosind,"ouro 250 grs bmf")
dowj = Mid(dadosind,i+23,((f-i)-66))
'Dólar comercial
i = 1
i = inStr(i,dadosind,"comercial")
i = inStr(i, dadosind,"comercial")
f = inStr(i, dadosind,"euro")
comercial = Mid(dadosind,i+17,((f-i)-53))
'Euro
i = 1
i = inStr(i,dadosind,"euro")
i = inStr(i, dadosind,"euro")
f = inStr(i, dadosind,"poupan")
euro = Mid(dadosind,i+20,((f-i)-56))
'Poupança
i = 1
i = inStr(i,dadosind,"poupan")
i = inStr(i, dadosind,"poupan")
f = inStr(i, dadosind,"</tr")
poupan = Mid(dadosind,i+15,((f-i)-8))
'Cria a parte debaixo da tabela inserindo o conteudo das variáveis
response.write("<TD>Bovespa</TD>")
response.write(bovespa)
response.write("<TR class=cor1><TD>Nasdaq</TD>")
response.write(nasdaq)
response.write("<tr><TD>Dow Jones</TD>")
response.write(dowj)
response.write("<TR class=cor1><TD>Dolar Comercial</TD>")
response.write(comercial)
response.write("<tr><TD>Euro</TD>")
response.write(euro)
response.write("<TR class=cor1><TD>Poupança</TD>")
response.write(poupan)
%>
<!-- Fecha tabela-->
</TBODY>
</TABLE>
</DIV>
Lógicamente lógico que não podemos nos esquecer do estilo da tabela que usei, que pode ser alterada facilmente, segue o código css abaixo:
/*INDICADORES*/
.indicadoresHome
{border-bottom:5px solid #2e0e08; background-color:#91260d; width:225px;}
.tabIndicadores
{background-color:#742716; margin:6px 0px 6px 6px; width:212px;}
.tdIndicadoresHeader
{background-color:#e77817;font-weight:bold; height:16px;}
.tabIndicadores *
{color:#FFF;}
.tabIndicadores td
{border-bottom:1px solid #e77817}
.tabIndicadores .cor1
{background-color:#812c18;}
0 comentários:
Postar um comentário