indicadores economicos

Jose Felipe Sanhueza Paredes jfsp24 en gmail.com
Dom Ago 20 15:21:46 CLT 2006


se le olvidó..como referencia pongo el curl para sacar el clima de chile:
curl -s "http://tiempo.espanol.yahoo.com/CIXX/CIXX0020/index_c.php" |  grep
-e 'Max' -e 'Min' -e '<big><big>' -e '
http://us.i1.yimg.com/us.yimg.com/i/us/we/52' > /var/www/climaChile.tmp

On 8/20/06, Jose Felipe Sanhueza Paredes <jfsp24 en gmail.com> wrote:
>
> bueno..pondré lo que hice..no es la mejor idea...ahí se puede maquillar.
> lo importante es que alguien pudiese ponerse con un server para poder
> proveer esta información a distintas gentes. Lo indicadores que sacaba era
> la uf y el dolar desde la pagina de terra..que iban sintonía con los del
> banco central, al igual que el clima que lo sacaba desde la pagina de yahoo
> español (sacados desde www.weather.com):
>
> crear tabla en una base de datos
> * shellscript que rescata dolar y uf desde pagina de terra.cl y los guarda
> en un archivo tmp.
> curl -s "http://www.terra.cl" | grep 'SANTORAL:' | sed -e :a -e
> 's/<[^>]*>/ /g;//N;//ba' >> /var/www/datosFinancierosChile.tmp
>   El resultado entregado es algo asi:
> Chile, domingo 20 de agosto de 2006 - 2:26 PM REST.: No Rige SANTORAL:
> Bernardo UF: $  18.303,61   US Obs.: $  530,69
>
> * luego generar un script php que vaya recorriendo el archivo y lo vaya
> guardando en la tabla respectiva:
>
> <?php
>        class Datos{
>                var ruta = '';
>                var conexion;
>
>                function Datos($ruta){ //constructor. parametro con ruta
> ubicacion archivo .tmp
>                       $this.ruta = $ruta;
>                }
>                function query($query){ // metodo q realizará acciones
> sobre bdd
>                       $this->conexion = mysql_connect("localhost", "user",
> "pass");
>                       !@mysql_select_db("baseDeDatos", $this->conexion);
>                      @mysql_query($query, $this->conexion);
>                      @mysql_close();
>                }
>
>                function getFile($File){//metodo q extraerá la información
> de archivo tmp
>                        $file = '';
>                        $f = fopen("$this->ruta$File", "r");
>                        while(!feof($f))
>                            $file .= utf8_encode(fgets($f, 4096));
>                        return $file;
>                }
>
>                 function getData($info){//recibirá arreglo y recorrerá
> hasta sacar la info necesaria.
>                         for($i = 0; $info[$i] != "$"; $i++);
>                         $i++;
>                         $uf = $info[$i];
>                         for(; $info[$i] != "$"; $i++);
>                         $this->query("UPDATE tabla SET dolarObs =
> '".$info[$i + 1]."', uf = '".$uf."' WHERE paisInfo = 'Chile'");//ACTUALIZA
> LA INFO EN LA TABLA
>                 }
>
>        } //fin clase
>        $datos = new Datos("/var/www/ "); //mandar ruta de ubicación de
> archivo
>        $file = $datos->getFile("datosFinancierosChile.tmp"); //mandar
> nombre archivo
>        $cad = explode(" ", $file); //contenido rescatado desde el archivo
> se pasa a un arreglo, tomando como separación cada espacio en blanco
>        $info = array();
>        for($i = 0; $i < count($cad); $i++) //se dejará en el arreglo info
> solo aquella info válida, es decir, sin espacios en blanco
>                 if($cad[$i])
>                        $info[] = $cad[$i];
>        $datos->getData($info);//se manda arreglo para rescatar datos y
> guardarlos
> ?>
>
> * Programar crontab--> dejar el shellscript por ejemplo a las 9 de la
> mañana, para luego el script php 5 minutos después (relativo)..yo solía
> recoger los cambios de diversos países y el clima cada una hora...de todas
> formas es modificable, al igual que el script.
>
> * Rescatar valores-->esta parte no la implemente con xml cuando lo hice,
> pq no lo necesitaba, solo hacia consulta directa a la base de datos para
> mostrar indicadores...sin embargo no debería ser TAN complicado.  se me
> ocurre hacer algo asi como:
>   <?php
>        $sql = new sql();
>        $datos = $sql->getDatos('Chile');
>        echo "<xml>
>                      <Chile>
>                            <uf>".$datos[uf]."</uf>";ETC.-.
>
> Eso fue mas menos lo que hice...debe estar activado el modulo curl en el
> servidor..y bueno..es absolutamente modificable..de hecho quizás si lo
> copypastean no funke, y es pq lo saque del script q realice, en el cual ,
> sacaba muuucha más información, pero a grosso modo esto es..seria ideal que
> nos coordináramos para poner este servicio para todos....para poder aportar
> algo sin q nos cobren....ojala alguien se ponga con un server y acceso para
> realizar esto..
>
> eso.. ;-)
>
>
>
>
>
>
>
>
>
> On 8/19/06, Jam <jamrojo en gmail.com> wrote:
> >
> > Jose Felipe Sanhueza Paredes
> > <jfsp24 en gmail.com>
> > [...]
> > yo genere unos script para sacar datos como uf, dolar obs, etc...
> > [...]
> > enserio, creo que a más de uno seria uti,l por q no los envias ;)
> >
> >
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://listas.inf.utfsm.cl/pipermail/php/attachments/20060820/3fc3eebb/attachment.html


Más información sobre la lista de distribución PHP