Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Raphael carlos

Cotação do dolar

Recommended Posts

Essa funcão pega a cotação do dolar atual direto do site da folha .

	  function cotacao_dolar_folha(){	  $url = "http://www.folha.uol.com.br";	  $conecurl = @fopen("$url","r") or die ('<center>erro na conexão com o site '.$url.'<br><b>informe o administrador erro 15 </b></center>');	  while(!feof($conecurl)) {	  $lin .= fgets($conecurl,4096);							  }	 fclose($conecurl);	 $nprimetable = strpos($lin,'<!--INDICES_FINANCEIROS-->');	 $fechatable = strpos($lin,'<!--/INDICES_FINANCEIROS-->');	 $quantopula = $fechatable - $nprimetable;	 $conteudo = substr($lin, $nprimetable ,$quantopula);	 $conteudo = ereg_replace('class="financierData dinheiro">','style="width:290px;">',$conteudo);	 $conteudo = ereg_replace('<td class="financierDataKicker">','<th align="left" class="div">',$conteudo);	 $conteudo = ereg_replace('<td class="financierDataValues">','<td class="p">',$conteudo);	 $conteudo = ereg_replace('<li><a href="/folha/indicadores/">Fundos e Bolsa</a></li>','',$conteudo);	 $conteudo = ereg_replace('<li><a href="/folha/dinheiro/dolar.shtml">Dólar</a></li>','',$conteudo);	 $conteudo = ereg_replace('<td align="right" colspan="3">','<td align="left" colspan="5" class="p">',$conteudo);	 $conteudo = ereg_replace('<table>','<table border="1" class="table" bordercolor="#006600">',$conteudo);	 	 $dados .= $conteudo;	 return $dados;						}

Compartilhar este post


Link para o post
Compartilhar em outros sites

eh soh mandar escrever....echo cotacao_dolar_folha();

Compartilhar este post


Link para o post
Compartilhar em outros sites

esse calcula direto do BC ( Banco Central ) .

aconselho criar um arquivo chamado funcoes.php e colocar todas as funcoes inclusive essa.

faça o seguinte :

<?function Cotacao_Dolar() 		 { 				  if(!$fp=fopen("http://www.bc.gov.br/htms/infecon/taxas/taxas.htm" ,"r" )) { 				  echo "Erro ao abrir a página de cotação"; 				  exit; 					   } 			 $conteudo = ''; 		 while(!feof($fp)) { // leia o conteúdo da página 						   $conteudo .= fgets($fp,1024); 						   } 						   fclose($fp); /*   Na expressão regular abaixo pego os dois números que tem o seguinte formato:   9,9999 (ex.: 2,8182)   O primeiro número é a taxa de compra e o segunda, taxa de venda .*([0-9]/[0-9]/[0-9]{4} */ 			 eregi("([0-9],[0-9]{3}).*([0-9],[0-9]{3})",$conteudo, $saida); 			 list($lixo,$taxaCompra,$taxaVenda) = $saida; 			 eregi("[0-9]./[0-9]./[0-9]{4}",$conteudo, $data); 			 list($data) = $data; 		$res=Array('taxacompra'=>$taxaCompra, 'taxavenda'=>$taxaVenda);		return $res;/*			 print " <table border='1' width='35%' bordercolorlight='#C0C0C0' cellspacing='0' cellpadding='0' bordercolordark='#FFFFFF' bgcolor='#F7F7F7'>   <tr> 	<td width='100%' bgcolor='#E8E8E8'><font face='Arial' size='2'><b>Dolar</b> </font><font face='Arial' size='1' color='#808080'>(Fonte: 	  Banco Central)</font></td>   </tr> </table> <table border='1' width='35%' bordercolorlight='#C0C0C0' cellspacing='0' cellpadding='0' bordercolordark='#FFFFFF'>   <tr> 	<td width='48%' bgcolor='#E8E8E8'><font face='Arial' size='2'>Compra</font></td> 	<td width='52%' bgcolor='#E8E8E8'><font face='Arial' size='2'>$taxaCompra</font></td>   </tr>   <tr> 	<td width='48%' bgcolor='#E8E8E8'><font face='Arial' size='2'>Venda</font></td> 	<td width='52%' bgcolor='#E8E8E8'><font face='Arial' size='2'>$taxaVenda</font></td>   </tr> </table> <table border='1' width='35%' bordercolorlight='#C0C0C0' cellspacing='0' cellpadding='0' bordercolordark='#FFFFFF' bgcolor='#F7F7F7'>   <tr> 	<td width='100%' bgcolor='#E8E8E8'><font face='Arial' size='1' color='#808080'>Atualizado $data pelo BCB</font></td>   </tr> </table>"; */			 }//fim Cotacao ?>

chama assim :

<?include("funcoes.php");$teste = Cotacao_Dolar();echo $teste["taxavenda"]; echo "<br>" . $teste["taxacompra"]; ?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

tem alguem que pode me indicar uma material ou entao me instruir de como se faz para receber este segundo script em php no flash, tenei muito já..........obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quem quiser ver o script funcionando, acesse a página inicial de http://investbolsa.com

 

O script completo fica assim, sem as tagas incial do PHP, que no caso dos blocos do xoops não precisa colocar:

 

 

 

function cotacao_dolar_folha(){

$url = "http://www.folha.uol.com.br";

$conecurl = @fopen("$url","r") or die ('<center>erro na conexão com o site '.$url.'<br><b>informe o administrador erro 15 </b></center>');

 

while(!feof($conecurl)) {

$lin .= fgets($conecurl,4096);

}

fclose($conecurl);

$nprimetable = strpos($lin,'<!--INDICES_FINANCEIROS-->');

$fechatable = strpos($lin,'<!--/INDICES_FINANCEIROS-->');

$quantopula = $fechatable - $nprimetable;

 

$conteudo = substr($lin, $nprimetable ,$quantopula);

$conteudo = ereg_replace('class="financierData dinheiro">','style="width:290px;">',$conteudo);

$conteudo = ereg_replace('<td class="financierDataKicker">','<th align="left" class="div">',$conteudo);

$conteudo = ereg_replace('<td class="financierDataValues">','<td class="p">',$conteudo);

$conteudo = ereg_replace('<li><a href="/folha/indicadores/">Fundos e Bolsa</a></li>','',$conteudo);

$conteudo = ereg_replace('<li><a href="/folha/dinheiro/dolar.shtml">Dólar</a></li>','',$conteudo);

$conteudo = ereg_replace('<td align="right" colspan="3">','<td align="left" colspan="5" class="p">',$conteudo);

$conteudo = ereg_replace('<table>','<table border="1" class="table" bordercolor="#006600">',$conteudo);

 

$dados .= $conteudo;

return $dados;

 

}

echo cotacao_dolar_folha();

 

 

Valeu mano http://forum.imasters.com.br/public/style_emoticons/default/clap.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

aew galera... esse post já está bem antigo... mas ainda está funcionando??

a maioria dos links postados acima já não são mais os mesmos... e pelo que eu entendi... ele "abre" uma página... e "varre" ela até encontrar strings em determinados formatos e então captura elas....

 

 

 

-> Num tem nenhuma outra forma de poder pegar esses dados de cotações de moedas e indicadores financeiros diversos??

 

Já procurei uma barbaridade no google mas não ahei nada que funcione...

o único que achei (gratuito) foi o desse site aqui (link)... mas eu tenho de fazer uma "gambiarra" no css para poder estilizá-lo... =/

 

-> Alguém conhece outro, que possa ser personalisável.. ou que pelo menos naum venha com propagandas??

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, aproveitando a thread aqui vai minha versão para recuperar a cotação de câmbio do site da UOL,

 

Como o código das duas classes é um pouco extenso vou colocar só o uso delas aqui,

 

A classe UOLCotacoes possui 6 getters:

UOLCotacoes::getDolarComercial()

UOLCotacoes::getDolarParalelo()

UOLCotacoes::getDolarTurismo()

UOLCotacoes::getEuro()

UOLCotacoes::getLibra()

UOLCotacoes::getPesosArgentinos()

 

Todos os getters da classe UOLCotacoes retornam uma instância de Cotacao que possui os seguintes getters:

Cotacao::getCompra()

Cotacao::getVariacao()

Cotacao::getVenda()

 

Os nomes dos getters são bastante intuitivos, por isso não vou comentar o que cada um faz, vou apenas mostrar como fazer:

 

<?php
require 'Cotacao.php';
require 'UOLCotacoes.php';

try {
$teste = new UOLCotacoes();
echo 'O valor de compra do Dólar Comercial é: R$ ' , $teste->getDolarComercial()->getCompra() , '<br />';
echo 'O valor para venda do Dólar Comercial é: R$ ' , $teste->getDolarComercial()->getVenda() , '<br />';
} catch ( RuntimeException $e ){
printf( 'Opz, erro[ %d ]: %s' , $e->getCode() , $e->getMessage() );
}

 

Isso deverá exibir:

O valor de compra do Dólar Comercial é: R$ 1.705<br />

O valor para venda do Dólar Comercial é: R$ 1.707<br />

 

Os links para download:

Cotacao.php

UOLCotacoes.php

 

PS: O link para download do arquivo está no canto inferior direito, logo abaixo do código.

Compartilhar este post


Link para o post
Compartilhar em outros sites

pode postar os codigos de cotacao.php e uolcontacoes.php pois o link esta invalido

preciso disso com urgencia, se poder me ajudar fico grato

 

Gilvan, os links foram restabelecidos.

 

;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá João Batista,

 

eu tentei usar os links que você passou mas não funcionou comigo não...

 

ele retorna o erro: Opz, erro[ 0 ]: cURL foi requerida e não foi encontrada

sendo que o endereço da página que está no script esta ativa e funcionando online: http://economia.uol.com.br/cotacoes/cambio.jhtm

 

Existe outra forma de obter esses indices econômicos?

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu tentei usar os links que você passou mas não funcionou comigo não...

 

ele retorna o erro: Opz, erro[ 0 ]: cURL foi requerida e não foi encontrada

Você precisa habilitar a biblioteca cURL, veja: http://br.php.net/manual/pt_BR/curl.setup.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sei que o tópico é antigo, mas estou precisando disto, e então achei melhor dar um bump neste tópico do que criar um novo.

 

João, o arquivo que você colocou não está mais disponivel, você ainda tem ele aí?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.