Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   consulta web, get o post (https://www.clubdelphi.com/foros/showthread.php?t=96089)

esublim 03-02-2023 15:44:33

consulta web, get o post
 
hola quiero aprender a hacer consultas en web desde delphi y de verdad los tutoriales o las guias son pocas

quiero hacer una cosulta en ejemplo:

https://bcv.org.ve/

y consultar poor ejemplo el precio del dolar en el dia

Código:

  <div id="dolar" class="col-sm-12 col-xs-12 ">       
        <div class="field-content">
                  <div class="row recuadrotsmc">
                        <div class="col-sm-6 col-xs-6">
                          <img src="/sites/default/files/dollar-04_2.png" class="icono_bss_blanco1">               
                          <span> USD</span>        </div>

alguien que me pudiera guiar y aprender sobre hacer consultas

pgranados 03-02-2023 22:49:57

Necesitarías consumir la información por un webservice o API, échale un ojo a esta información: https://rstudio-pubs-static.s3.amazo...4f012a8f9.html

Neftali [Germán.Estévez] 06-02-2023 09:07:17

Hay dos opciones.
Una, que sería la más correcta, es que la propia web tuviera una API para consumir, tal y como comenta [pgranados].
En ese caso es sencillo utilizando GET, POST y los componentes de REST que vienen con Delphi.
Si buscas en los foros sobre TRESTRequest, TRESTResponse,... encontrarás muchos mensajes de cómo utilizarlos.

Si la web no disp0one de API, puedes intentar hacerlo leyendo el contenido de la página directamente. Es un método más costoso, menos seguro y menos fiable.
En ese caso puedes revisar estos hilos para tener una idea:
http://www.clubdelphi.com/foros/showthread.php?t=57647
https://www.clubdelphi.com/foros/showthread.php?t=24521
http://www.clubdelphi.com/foros/showthread.php?t=62883
https://www.clubdelphi.com/foros/showthread.php?t=66718

esublim 08-02-2023 19:36:27

quiero ver si logro verlo en tipo json y me tope con esto:

http://www.cne.gob.ve/web/js/re.php

sera que alguien me echa una manito

esublim 08-02-2023 19:54:28

y tambien me tope con esto:
http://www.cne.gob.ve/web/registro_e...al/ce.php.save

esublim 08-02-2023 20:01:53

http://www.cne.gob.ve/web/registro_e...edula=20188760
por alli consulta la pagina del cne pero no logro verlo en json

Neftali [Germán.Estévez] 09-02-2023 09:22:38

Cita:

Empezado por esublim (Mensaje 550286)
quiero ver si logro verlo en tipo json y me tope con esto:
http://www.cne.gob.ve/web/js/re.php
sera que alguien me echa una manito

Cita:

Empezado por esublim (Mensaje 550287)

Eso simplemente son páginas de código que no deberías ver.

Como te he dicho en el otro mensaje, busca en los links:
Con este código puede descargar el código fuente de la página:

Código Delphi [-]
procedure TForm3.Button1Click(Sender: TObject);
var
  http: TIdHTTP;
  IdSSLIOHandler: TIdSSLIOHandlerSocketOpenSSL;
  temp: TFileStream;
  fName:string;
begin
  fName := 'r:\out.txt';

  http := TIdHTTP.Create(Self);
  IdSSLIOHandler := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
  try
    http.IOHandler := IdSSLIOHandler;
    IdSSLIOHandler.SSLOptions.SSLVersions := [sslvSSLv2, sslvTLSv1_2];
    IdSSLIOHandler.SSLOptions.Method := sslvSSLv23;

    temp := TFileStream.Create(fName, fmCreate);
    try
      http.Get('https://bcv.org.ve/', temp);
    finally
      temp.Free;
    end;
    Memo1.Lines.LoadFromFile(fName);
  finally
    FreeAndNil(http);
    FreeAndNil(IdSSLIOHandler);
  end;
end;

Una vez tienes el código de la página, en tu caso, sólo necesitas buscar el texto: <span> USD</span>


Una vez que lo encuentres, solo debes seguir hasta obtener el valor que deseas: <strong> 23,80950000 </strong>
El texto que busques puede variar.


Haz pruebas con eso.


La franja horaria es GMT +2. Ahora son las 09:46:55.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi